]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
5 years agoFix a buffer overread that could occur when running fts5 prefix queries inside a... branch-3.18
dan [Tue, 3 Sep 2019 19:40:52 +0000 (19:40 +0000)] 
Fix a buffer overread that could occur when running fts5 prefix queries inside a transaction.

FossilOrigin-Name: b54aa18b0fe4d683c602ed2ba59ded6c33168982d14ea14a12b4e00cde8bf973

5 years agoDisable the undocumented rtreenode() SQL function that is only used for testing,
drh [Tue, 3 Sep 2019 17:46:35 +0000 (17:46 +0000)] 
Disable the undocumented rtreenode() SQL function that is only used for testing,
except when doing a build that is specifically intended for testing.

FossilOrigin-Name: 0a1cce496c515a2ff9c044021ac0e84756830f4ffbb86f5f736bdbb49fb74927

6 years agoAdd extra defenses against strategically corrupt databases to fts3/4.
drh [Wed, 19 Dec 2018 01:38:18 +0000 (01:38 +0000)] 
Add extra defenses against strategically corrupt databases to fts3/4.

FossilOrigin-Name: 4bb21d8205b3c72b94442018a0544ecc55e3320ef2593f0e3350142b7f2a7663

7 years agoAdd new interfaces sqlite3_result_pointer(), and
drh [Fri, 21 Jul 2017 07:56:09 +0000 (07:56 +0000)] 
Add new interfaces sqlite3_result_pointer(), and
sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column
pointer to the snippet() and offsets() routines.  This changes is a
cherry-pick of [f0f49224] via [69906880cee] and is ultimately inspired
by check-in [72de49f2].

FossilOrigin-Name: 8201f4e1c566f7223c71c07e6b703d1352801f1b2daa0fd00895a18e1944cb4d

8 years agoVersion 3.18.2 version-3.18.2
drh [Sat, 17 Jun 2017 09:59:36 +0000 (09:59 +0000)] 
Version 3.18.2

FossilOrigin-Name: 036ebf729e4b21035d7f4f8e35a6f705e6bf99887889e2dc14ebf2242e7930dd

8 years agoWhen building an ephemeral table of integers, do not assume that the table
drh [Sat, 17 Jun 2017 00:39:47 +0000 (00:39 +0000)] 
When building an ephemeral table of integers, do not assume that the table
does not already contain N if the insert cursor points to N-1. Fix for ticket
[61fe9745].  Also increase the version number to 3.18.2.  This is the
release candidate.

FossilOrigin-Name: e1b71029087675749a5c64303a8756d16cb33ed3ac2e8d3b075051f575c072fb

8 years agoVersion 3.18.1 version-3.18.1
drh [Fri, 16 Jun 2017 13:41:15 +0000 (13:41 +0000)] 
Version 3.18.1

FossilOrigin-Name: 77bb46233db03a3338bacf7e56f439be3dfd1926ea0c44d252eeafa7a7b31c06

8 years agoAn unintentional fork was created due to a typo when creating branch-3.18.
drh [Fri, 16 Jun 2017 12:15:25 +0000 (12:15 +0000)] 
An unintentional fork was created due to a typo when creating branch-3.18.
This check-in resolves the fork and is the 3.18.1 release candidate.

FossilOrigin-Name: 20e5ffb1ceed514bf812ea5a2ce027b55203612bdbf8116a69f0cd52c67dbb84

8 years agoIncrease the version number to 3.18.1.
drh [Thu, 15 Jun 2017 07:47:09 +0000 (07:47 +0000)] 
Increase the version number to 3.18.1.

FossilOrigin-Name: 4be2eba8c15104e9f420738092c06a14a9c9c34b13c0c8f897302ab7613ffccc

8 years agoEnsure pointer map entries are always added when a row that does use overflow
drh [Mon, 12 Jun 2017 23:44:37 +0000 (23:44 +0000)] 
Ensure pointer map entries are always added when a row that does use overflow
pages replaces one that does not in an auto-vacuum database. Fix for
[fda22108].

FossilOrigin-Name: 30c50f0e06084f3c4357962ed99e2c803b21ca238d00d70d9dee40164caf2afa

8 years agoVersion 3.18.0 Release Candidate version-3.18.0
drh [Tue, 28 Mar 2017 18:48:43 +0000 (18:48 +0000)] 
Version 3.18.0 Release Candidate

FossilOrigin-Name: 424a0d380332858ee55bdebc4af3789f74e70a2b3ba1cf29d84b9b4bcf3e2e37

8 years agoAdd the new sqlite3_set_last_insert_rowid() interface to the extension
drh [Sat, 25 Mar 2017 19:16:41 +0000 (19:16 +0000)] 
Add the new sqlite3_set_last_insert_rowid() interface to the extension
loader thunk.

FossilOrigin-Name: 8469fc0d48d6af0accef9b8a84e08ad2ca32351907510d177b4ca4815c1ea7cb

8 years agoDo not run tests for ".dump --preserve-rowids" when testing
dan [Sat, 25 Mar 2017 18:31:42 +0000 (18:31 +0000)] 
Do not run tests for ".dump --preserve-rowids" when testing
SQLITE_OMIT_VIRTUALTABLE builds.

FossilOrigin-Name: 55df410b2cd27dc4c7670bcc1196fa3a0e9e601fc24c42e53d6b0a26ee3e4b45

8 years agoDisable the new --preserve-rowids option on the CLI ".dump" command if
drh [Sat, 25 Mar 2017 18:15:05 +0000 (18:15 +0000)] 
Disable the new --preserve-rowids option on the CLI ".dump" command if
compiled with SQLITE_OMIT_VIRTUALTABLE.

FossilOrigin-Name: bd5bbe4eece9051cc8c27d834d22fb243d34f261641984555d02a27b7038d4f6

8 years agoMake the default value for SQLITE_DEFAULT_SYNCHRONOUS a simple integer
drh [Sat, 25 Mar 2017 18:03:26 +0000 (18:03 +0000)] 
Make the default value for SQLITE_DEFAULT_SYNCHRONOUS a simple integer
literal, so that it does not show up goofy in the output of
"PRAGMA compile_options;".

FossilOrigin-Name: 833ab3212addc340ca8004e8d6a06cc5e51bf256f43dc73d87fbe67518a4891b

8 years agoFix two harmless compiler warnings.
drh [Sat, 25 Mar 2017 12:08:11 +0000 (12:08 +0000)] 
Fix two harmless compiler warnings.

FossilOrigin-Name: 32be9c3faaafd736da3f49d475dc9279af4e4ba38070b60033d898345080acf0

8 years agoFix a harmless compiler warning in the JSON1 extension.
drh [Fri, 24 Mar 2017 19:45:05 +0000 (19:45 +0000)] 
Fix a harmless compiler warning in the JSON1 extension.

FossilOrigin-Name: c2c3dd84534bb5ea81c974847b74a166c9cba1545fc749ce625929f303bf22e4

8 years agoPrevious check-in was not correct. This is a better fix for the OP_Once
drh [Fri, 24 Mar 2017 18:38:41 +0000 (18:38 +0000)] 
Previous check-in was not correct.  This is a better fix for the OP_Once
problem of ticket [06796225f59c057cd120f1].

FossilOrigin-Name: 8194dd2814b0b3f8cffbcb16306f55aabf1c1508b9d27fa806f92f0e6ecd7631

8 years agoFix the OP_Once opcode so that it works correctly for recursive triggers.
drh [Fri, 24 Mar 2017 17:59:56 +0000 (17:59 +0000)] 
Fix the OP_Once opcode so that it works correctly for recursive triggers.
Ticket [06796225f59c057cd120f1].

FossilOrigin-Name: 2556014514f36808e6d18b25722eae0daeeb8fbb5d18af13a9698ea6c6db1679

8 years agoAdd the RFC-7396 Appendix A test cases for json_patch().
drh [Fri, 24 Mar 2017 13:31:47 +0000 (13:31 +0000)] 
Add the RFC-7396 Appendix A test cases for json_patch().

FossilOrigin-Name: c5441d2df2526723f72610cc14dd243223663979e67ecdd76fe06fcd366f2b29

8 years agoFix an error in the new json_patch() routine discovered by Ralf Junker.
drh [Fri, 24 Mar 2017 12:35:17 +0000 (12:35 +0000)] 
Fix an error in the new json_patch() routine discovered by Ralf Junker.

FossilOrigin-Name: 9d5350418b2f6113e0b50c57e8a872006f27753067baf08ffdfa7943c0c9a148

8 years agoAdd the json_patch() SQL function to the JSON1 extension.
drh [Thu, 23 Mar 2017 23:44:55 +0000 (23:44 +0000)] 
Add the json_patch() SQL function to the JSON1 extension.

FossilOrigin-Name: 476088482024e411e2549b1697cdaf0124294c79d43f508c71c4eb66906a56fc

8 years agoChange the name of the json_merge_patch() function to just json_patch(). json_mergepatch
drh [Thu, 23 Mar 2017 20:33:49 +0000 (20:33 +0000)] 
Change the name of the json_merge_patch() function to just json_patch().

FossilOrigin-Name: 04d4100445a3373986ee962618bc03ec304f6ba2f867c8e9eee415daffb593fc

8 years agoImprovement to the amalgamation configure.ac file contributed by
drh [Thu, 23 Mar 2017 19:51:38 +0000 (19:51 +0000)] 
Improvement to the amalgamation configure.ac file contributed by
Bob Friesenhahn.

FossilOrigin-Name: bf28a55d8185e370fea39de297c37387f852f43fac0a316e5900e633f99b367f

8 years agoDo not run test file autoanalyze1.test if OMIT_VIRTUALTABLE is defined.
dan [Thu, 23 Mar 2017 17:22:09 +0000 (17:22 +0000)] 
Do not run test file autoanalyze1.test if OMIT_VIRTUALTABLE is defined.

FossilOrigin-Name: e1d06a573ee56bf6a14e4dc8086d6a4df1464f2914834cf4596a0a406688f608

8 years agoRemove an invalid assert() statement failing when VACUUMing a database that
dan [Thu, 23 Mar 2017 17:03:35 +0000 (17:03 +0000)] 
Remove an invalid assert() statement failing when VACUUMing a database that
contains an index on a column explicitly declared "COLLATE BINARY".

FossilOrigin-Name: 9f2e04d3c3526b5ff60d941aa6d5446f602cab37cb93972937f39eefabd6868d

8 years agoAvoid redundant edits in the json_merge_patch() function.
drh [Thu, 23 Mar 2017 12:56:44 +0000 (12:56 +0000)] 
Avoid redundant edits in the json_merge_patch() function.

FossilOrigin-Name: 4a8e6437dd610c5376a07867a73e5a7e2ea90357a018e1788ecce6f4e10bc939

8 years agoFix harmless compiler warnings in the new json_merge_patch() logic.
drh [Thu, 23 Mar 2017 00:46:15 +0000 (00:46 +0000)] 
Fix harmless compiler warnings in the new json_merge_patch() logic.

FossilOrigin-Name: 5d2cf5a2f8afd88d041d89b3936042ce5a43629d23c48738cb2791b24da3e6af

8 years agoVarious fixes to the json_merge_patch() function.
drh [Thu, 23 Mar 2017 00:13:52 +0000 (00:13 +0000)] 
Various fixes to the json_merge_patch() function.

FossilOrigin-Name: f49fd2554b0723eb7cf2fd765d655c6820833ee7e5f7d7629d98c27a6fffa1d9

8 years agoChange the name of the new function to "json_merge_patch()".
drh [Wed, 22 Mar 2017 21:45:20 +0000 (21:45 +0000)] 
Change the name of the new function to "json_merge_patch()".

FossilOrigin-Name: 53bf70f37bbca319ea35f70849e2a34ae628a504486158fdad5c4bb7431c68e0

8 years agoInitial implementation of the json_mergepatch(A,B) SQL function.
drh [Wed, 22 Mar 2017 21:24:31 +0000 (21:24 +0000)] 
Initial implementation of the json_mergepatch(A,B) SQL function.

FossilOrigin-Name: a267444039af519f088dd8f8ee33f686cc3071c087677075af2364ebc2587514

8 years agoFix harmless compiler warnings in the shell.
drh [Wed, 22 Mar 2017 12:51:34 +0000 (12:51 +0000)] 
Fix harmless compiler warnings in the shell.

FossilOrigin-Name: a786829783ef65ef270ca360712364cbd47a540d31ed1547d50808aad698bea7

8 years agoNew simplified memory initialization for MacOS.
drh [Tue, 21 Mar 2017 20:17:24 +0000 (20:17 +0000)] 
New simplified memory initialization for MacOS.

FossilOrigin-Name: 055b36f1c1593bb123f7319a07c476143d71af052b5b8d34afcd0d500f197882

8 years agoFix an incorrect assert in the ANALYZE logic for STAT4 on WITHOUT ROWID
drh [Tue, 21 Mar 2017 18:56:52 +0000 (18:56 +0000)] 
Fix an incorrect assert in the ANALYZE logic for STAT4 on WITHOUT ROWID
tables.

FossilOrigin-Name: ad741976c8c29bcc94f9ea9ed7deb580bb00c8a81d1a7fba1a4e03849728433d

8 years agoAdd short script ext/fts3/tool/fts3cov.sh. To help measure test-coverage of
dan [Tue, 21 Mar 2017 17:19:31 +0000 (17:19 +0000)] 
Add short script ext/fts3/tool/fts3cov.sh. To help measure test-coverage of
fts3 source code.

FossilOrigin-Name: ee9588e873ffebcaa177957950cbb14924e154c391ed7f687116065064ff11b0

8 years agoDo not run sync2.test as part of the "inmemory_journal" permutation.
dan [Tue, 21 Mar 2017 10:45:38 +0000 (10:45 +0000)] 
Do not run sync2.test as part of the "inmemory_journal" permutation.

FossilOrigin-Name: 9f680bc7c47f8391adba6ea2b4b2cb6a5a041e22753543d5224da6656c3762fe

8 years agoAdd the --native-malloc option to fuzzcheck. Fix ossfuzz.c and fuzzcheck.c
drh [Mon, 20 Mar 2017 22:58:27 +0000 (22:58 +0000)] 
Add the --native-malloc option to fuzzcheck.  Fix ossfuzz.c and fuzzcheck.c
so that they both deallocate the temp_store_directory before closing.

FossilOrigin-Name: 0dd18ec882bb28a87629d6d8dfeb5ea5d82833634b3781a7d14b917272c4dfa0

8 years agoFix the fuzzcheck program so that it can create new databases again.
drh [Mon, 20 Mar 2017 20:42:21 +0000 (20:42 +0000)] 
Fix the fuzzcheck program so that it can create new databases again.

FossilOrigin-Name: 021e8874a7d1bb94debae3ae04f83056a8573148ffc872cd76a186a2d22d0296

8 years agoAvoid passing NULL as the second argument to memcpy() in fts3.
dan [Mon, 20 Mar 2017 19:35:30 +0000 (19:35 +0000)] 
Avoid passing NULL as the second argument to memcpy() in fts3.

FossilOrigin-Name: 49b93d972de9649abfd6235b65dda1c9d468956671e50704afde6181ffa56dea

8 years agoAvoid a technically undefined right-shift of a signed value in rtree.c.
dan [Mon, 20 Mar 2017 19:26:27 +0000 (19:26 +0000)] 
Avoid a technically undefined right-shift of a signed value in rtree.c.

FossilOrigin-Name: a144875fe44ff3a30bab299d50b7dbec2ee21f8c73e692a71ee1f7c54b5f0c76

8 years agoFix some problems in fts3 found by address-sanitizer.
dan [Mon, 20 Mar 2017 18:53:32 +0000 (18:53 +0000)] 
Fix some problems in fts3 found by address-sanitizer.

FossilOrigin-Name: 16a8e84fa7f67a467f824bdd7f72cbd6a6e95dab8cc7aa1e0e751720b98f3e31

8 years agoAvoid the possibility of signed integer overflow with oversized precisions
drh [Mon, 20 Mar 2017 16:34:18 +0000 (16:34 +0000)] 
Avoid the possibility of signed integer overflow with oversized precisions
in %d conversions in the printf() implementation.

FossilOrigin-Name: ef3a7c877a7549b351aafd983cfa96c863eb2641b6218bdd5cb563f659f879d8

8 years agoDo not run sync2.test as part of the "journaltest" permutation, as it uses
dan [Mon, 20 Mar 2017 16:06:48 +0000 (16:06 +0000)] 
Do not run sync2.test as part of the "journaltest" permutation, as it uses
"PRAGMA synchronous = off".

FossilOrigin-Name: 285005a9bcb210bb2a9aa9fed6a19d4b78641a6e7622d469bd0d2a365b2c0735

8 years agoEnsure that a "--" prefix is added to sqlite3_trace_v2() output for nested
drh [Mon, 20 Mar 2017 15:29:28 +0000 (15:29 +0000)] 
Ensure that a "--" prefix is added to sqlite3_trace_v2() output for nested
SQL statements.

FossilOrigin-Name: 673a7b67c4828acaea3baebea500ef1f8ae763588b0d9c9f2ad6ed5ceb3cfee2

8 years agoOnly run sync2.test on unix, as it depends on instrumentation in os_unix.c.
dan [Mon, 20 Mar 2017 15:11:40 +0000 (15:11 +0000)] 
Only run sync2.test on unix, as it depends on instrumentation in os_unix.c.

FossilOrigin-Name: ecb9321e18dd72ea18d197c61c4d69500e9c4282c0eac67822cb40b2710a2815

8 years agoFix the check.test script so that it works on Windows.
drh [Mon, 20 Mar 2017 14:44:07 +0000 (14:44 +0000)] 
Fix the check.test script so that it works on Windows.

FossilOrigin-Name: 8822eb5d790bf8d4302c3f2dc05ab672193b309fb11771c4b3eea8a77f37e299

8 years agoDocumentation fix: SQLITE_SOURCE_ID is a now a SHA3-256 hash.
drh [Mon, 20 Mar 2017 13:03:39 +0000 (13:03 +0000)] 
Documentation fix:  SQLITE_SOURCE_ID is a now a SHA3-256 hash.

FossilOrigin-Name: 2aa22509e7c8a1f09b16e4544c95d0b77503daed1f83106ccc18dee8bd9487a4

8 years agoOnly do the specialized MacOS single-core zone_malloc initialization if
drh [Sat, 18 Mar 2017 13:59:46 +0000 (13:59 +0000)] 
Only do the specialized MacOS single-core zone_malloc initialization if
compiled with the SQLITE_MIGHT_BE_SINGLE_CORE flag.  This avoids a (harmless)
warning about OSAtomicCompareAndSwapPtrBarrier() being deprecated.

FossilOrigin-Name: 4e6a03d9e12b120d15946b025f97a97697cb8e8af543c238ffda220c9e3f28f4

8 years agoFix an error in the newly revised documentation for SQLITE_LIMIT_VDBE_OP.
drh [Fri, 17 Mar 2017 23:08:11 +0000 (23:08 +0000)] 
Fix an error in the newly revised documentation for SQLITE_LIMIT_VDBE_OP.
No changes to code.

FossilOrigin-Name: f4cf8635e6fec6f04075cc067aaa71abc4f71739068e0ad2c44609dcb8691009

8 years agoSet a reasonable limit on the number of opcodes in a prepared statement
drh [Fri, 17 Mar 2017 22:51:28 +0000 (22:51 +0000)] 
Set a reasonable limit on the number of opcodes in a prepared statement
for ossfuzz.c.  This should prevent timeouts in OSS-Fuzz when it generates
totally unreasonable queries.

FossilOrigin-Name: f74899ed2c78019abb406432a74dcd42a0ff8d9add005f8544dc4a8905f232eb

8 years agoBegin enforcing the SQLITE_LIMIT_VDBE_OP. The documentation warned that this
drh [Fri, 17 Mar 2017 22:50:16 +0000 (22:50 +0000)] 
Begin enforcing the SQLITE_LIMIT_VDBE_OP.  The documentation warned that this
day might come.

FossilOrigin-Name: ef5914617088cbf89bfae88f63ea959a07f02dff387ddc2b43948ad99c6a97b8

8 years agoAdd the --show-errors and --show-max-delay command-line options to the
drh [Fri, 17 Mar 2017 14:59:40 +0000 (14:59 +0000)] 
Add the --show-errors and --show-max-delay command-line options to the
ossshell test program.

FossilOrigin-Name: 626bdca98e0cd78ae873d97e75bb7d544ca18759c9f1e67f4adf03daca7fe5bf

8 years agoFix the Makefile.in so that it builds the ossshell test program correctly.
drh [Fri, 17 Mar 2017 14:15:06 +0000 (14:15 +0000)] 
Fix the Makefile.in so that it builds the ossshell test program correctly.

FossilOrigin-Name: 36f5602ec9fb8e404c5250e18b1db877ac7bee643918b94afd51808134ea7900

8 years agoFix a buffer overread in debugging routine sqlite3VdbeMemPrettyPrint().
dan [Fri, 17 Mar 2017 13:59:06 +0000 (13:59 +0000)] 
Fix a buffer overread in debugging routine sqlite3VdbeMemPrettyPrint().
Problem discovered by OSS-Fuzz.

FossilOrigin-Name: f336fba7d7d41b91a5000d01dddf785821fa79ea31dbd8d1f769d55f7e871896

8 years agoFix a problem in the enhanced PRAGMA integrity_check where it verifies
drh [Fri, 17 Mar 2017 03:21:14 +0000 (03:21 +0000)] 
Fix a problem in the enhanced PRAGMA integrity_check where it verifies
CHECK constraints: Do not be confused by the reuse of the Table.pCheck field
by VIEWs with named columns.  Problem discovered by OSS-Fuzz.

FossilOrigin-Name: 019dd3d5ba4a596c4ec3b5f0de8402c72196af0faca9138edbc0f1f4957cae60

8 years agoIf the user has not set it explicitly, set the "PRAGMA synchronous" setting to
dan [Thu, 16 Mar 2017 18:55:21 +0000 (18:55 +0000)] 
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to
SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to
rollback journal mode.

FossilOrigin-Name: 5c604479fda06714500959e121c719d1b6c8e54d1658eb9f560a4af95b7c5829

8 years agoFix a typo causing the build to fail if SQLITE_DEFAULT_SYNCHRONOUS==SQLITE_DEFAULT_WA... default-synchronous-fix
dan [Thu, 16 Mar 2017 18:54:42 +0000 (18:54 +0000)] 
Fix a typo causing the build to fail if SQLITE_DEFAULT_SYNCHRONOUS==SQLITE_DEFAULT_WAL_SYNCHRONOUS.

FossilOrigin-Name: df39adeaa4d73a3d4ec831843b8ec7fd449f8b2137bdc7d7c320958d00e98db6

8 years agoIf the user has not set it explicitly, set the "PRAGMA synchronous" setting to
dan [Thu, 16 Mar 2017 18:14:39 +0000 (18:14 +0000)] 
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to
SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to
rollback journal mode.

FossilOrigin-Name: 78030c0f52aa39fb2ab32c75c56e6bcefe6382b8df28b1909e3c911e42dbeca3

8 years agoSimplified OOM detection in the instr() SQL function.
drh [Thu, 16 Mar 2017 14:28:52 +0000 (14:28 +0000)] 
Simplified OOM detection in the instr() SQL function.

FossilOrigin-Name: 6d85eb5736781b43aa674d9544c7523b849b4e634f371702f8764b33e22e1e9f

8 years agoFix an uninitialized variable reference in the text generator
drh [Thu, 16 Mar 2017 13:30:58 +0000 (13:30 +0000)] 
Fix an uninitialized variable reference in the text generator
for "PRAGMA vdbe_trace=ON" output.
Problem discovered by OSS-Fuzz.

FossilOrigin-Name: e3d487162d1596ce125644f754ed9531ef4412f31f6837c3e31b7542b90602fe

8 years agoFix a problem in the "showdb" utility that prevents it from correctly
drh [Thu, 16 Mar 2017 13:14:03 +0000 (13:14 +0000)] 
Fix a problem in the "showdb" utility that prevents it from correctly
decoding cells with no content beyond the record header.

FossilOrigin-Name: eb7680a1c047b2a33d6a0c9733fafaee11272377c627af10bbd541b6b7ed952b

8 years agoFix a crash that could follow an OOM condition in the instr() SQL function.
dan [Thu, 16 Mar 2017 12:11:07 +0000 (12:11 +0000)] 
Fix a crash that could follow an OOM condition in the instr() SQL function.

FossilOrigin-Name: 6e59e903e4e956617bddef0b94e5cae02d724ac8145940b57ab5b0f628759736

8 years agoUpdates to README files under the ext/ hierarchy. No changes to code.
drh [Wed, 15 Mar 2017 20:27:46 +0000 (20:27 +0000)] 
Updates to README files under the ext/ hierarchy.  No changes to code.

FossilOrigin-Name: 029bc5d224bcbdcca2307710539b133c39e2a27b971c28b294a1f517b80cb418

8 years agoAdd the "Obtaining The Code" subsection in the top-level README.md file.
drh [Wed, 15 Mar 2017 19:11:29 +0000 (19:11 +0000)] 
Add the "Obtaining The Code" subsection in the top-level README.md file.
No changes to code.

FossilOrigin-Name: b1b1aa8b69aa80c83aec3380565f0b4ec0b6a6e033537becee098872da362e9a

8 years agoMention the ".selftest" command in the ".help" output of the CLI.
drh [Wed, 15 Mar 2017 14:20:34 +0000 (14:20 +0000)] 
Mention the ".selftest" command in the ".help" output of the CLI.

FossilOrigin-Name: 37f766dbad1f99ff86dd1b771bf443036e928e5b4d8abe55bbe4acf3362c7be2

8 years agoMake "PRAGMA temp.synchronous=N" a no-op to ensure that the TEMP schema
drh [Wed, 15 Mar 2017 14:04:03 +0000 (14:04 +0000)] 
Make "PRAGMA temp.synchronous=N" a no-op to ensure that the TEMP schema
always has synchronous=OFF.  This fixes an issue discovered by OSS-Fuzz.

FossilOrigin-Name: bcf6bb08d8b07d3c4567bcd367f8d4011ce8baad28c25d4e8870bdf347dd48bd

8 years agoImproved header comment on the shathree.c extension. No changes to code.
drh [Wed, 15 Mar 2017 13:47:39 +0000 (13:47 +0000)] 
Improved header comment on the shathree.c extension.  No changes to code.

FossilOrigin-Name: 84f2e3d5f611b35de16684956d842df6c93d858e8187f17eb27452758a752c57

8 years agoUpdates to the MSVC makefiles.
mistachkin [Tue, 14 Mar 2017 15:27:56 +0000 (15:27 +0000)] 
Updates to the MSVC makefiles.

FossilOrigin-Name: 1e4b9e7c9ee32b985c440bf3eb65bbdf28055566e66b6feba438143a3ad8dd07

8 years agoAdd the dbdump.c extension that implements functionality similar to the
drh [Mon, 13 Mar 2017 22:10:05 +0000 (22:10 +0000)] 
Add the dbdump.c extension that implements functionality similar to the
".dump" command of the CLI, though in a separate library.

FossilOrigin-Name: 2b9980a292d7f0d995b77d9b3fb217bb2206f6d452e036ac502fa06561af4c12

8 years agoAdd dbdump.exe to the MSVC makefile. dbdump
drh [Mon, 13 Mar 2017 22:02:01 +0000 (22:02 +0000)] 
Add dbdump.exe to the MSVC makefile.

FossilOrigin-Name: 59241a50ad1d6fe9f5804b73b3467dcd407d359ccbdcb9d72f2f6d94c90c1f40

8 years agoFixes to the dump logic. All appears to be working in preliminary tests.
drh [Mon, 13 Mar 2017 21:49:48 +0000 (21:49 +0000)] 
Fixes to the dump logic.  All appears to be working in preliminary tests.

FossilOrigin-Name: 007b11e301d444361c8eff8734dc2fb968a64343c177ff30cec74a0cf76099e8

8 years agoFirst draft of the complete dbdump.c library.
drh [Mon, 13 Mar 2017 21:26:41 +0000 (21:26 +0000)] 
First draft of the complete dbdump.c library.

FossilOrigin-Name: 84ea4fcc52d0af02648c52989c2e69f4961071e1620382555ec59a39161a7a7d

8 years agoInfrastructure for an extension C-library to implement sqlite3_db_dump() and
drh [Mon, 13 Mar 2017 19:26:34 +0000 (19:26 +0000)] 
Infrastructure for an extension C-library to implement sqlite3_db_dump() and
a corresponding "dbdump" command-line utility - both of which do the same
work as the ".dump" command of the CLI.

FossilOrigin-Name: 74c5ace498f72d7f5495203678bedd0bc540211131a4e4db7b62115d5322a288

8 years agoIn the output of the ".dump" command in the CLI, quote newline and
drh [Mon, 13 Mar 2017 18:24:06 +0000 (18:24 +0000)] 
In the output of the ".dump" command in the CLI, quote newline and
carriage-return characters using the char() function, so that they do not
get eaten by end-of-line processing logic in the OS or in other command-line
utilities and/or libraries.

FossilOrigin-Name: 68f6dc7af1013f296a11db14c007cc13cc3fe56832848bfed835ed8f74dcc676

8 years agoFix the sqlite3TreeViewSelect() routine so that it works with a null pointer
drh [Mon, 13 Mar 2017 17:37:13 +0000 (17:37 +0000)] 
Fix the sqlite3TreeViewSelect() routine so that it works with a null pointer
to the Select object.

FossilOrigin-Name: 9034cf7efc603864f51e931c7dc4fbbc2d01904e951e78c88d4d80f9936250e8

8 years agoFix a segfault that could occur following an OOM error in the
dan [Mon, 13 Mar 2017 14:30:40 +0000 (14:30 +0000)] 
Fix a segfault that could occur following an OOM error in the
flattenSubquery() routine.

FossilOrigin-Name: c6dda3f752c184f441624c9993e77d5031063d79a0e177b6e25a9886514a742e

8 years agoIn the OSSFuzz test module, invoke the progress handler much more frequently
drh [Mon, 13 Mar 2017 13:45:29 +0000 (13:45 +0000)] 
In the OSSFuzz test module, invoke the progress handler much more frequently
so that timeouts are detected punctually even if the test script is running
opcodes that individually take a long time (for example, an OP_Function opcode
that invokes "randomblob(1.5e6)").

FossilOrigin-Name: f3b6959c04c4ef7b8ff03582b867012a869d52b4a90a0d7ab079ee4c21be5464

8 years agoFix a possible NULL pointer dereference in following an OOM error
drh [Sun, 12 Mar 2017 20:28:44 +0000 (20:28 +0000)] 
Fix a possible NULL pointer dereference in following an OOM error
in sqlite3ExprIsInteger(). Problem found by OSS-Fuzz.

FossilOrigin-Name: 5ec655e8e817c1ed3bfb2e576745a7cef441494ad7baf1bf9f8895e98ac19c5a

8 years agoRemove an obsolete assert() in the IN operator code generation.
drh [Sun, 12 Mar 2017 19:39:00 +0000 (19:39 +0000)] 
Remove an obsolete assert() in the IN operator code generation.

FossilOrigin-Name: 18bf6aca2ac86478fd12d5020f3a41cfd2bd2dc3defe2298411f79ad308a6f73

8 years agoMake sure the translateColumnToCopy() routine in the query planner does not
drh [Sat, 11 Mar 2017 13:02:59 +0000 (13:02 +0000)] 
Make sure the translateColumnToCopy() routine in the query planner does not
try to access an array that failed to be fully allocated due to a prior OOM.
This fixes an issue discovered by OSSFuzz.

FossilOrigin-Name: 3299a26160c239255608d1e2b15a221e28b18a3d

8 years agoThe output of the ".dump" command in the CLI quotes newline and carriage-return string-quoting-dump
drh [Sat, 11 Mar 2017 01:56:41 +0000 (01:56 +0000)] 
The output of the ".dump" command in the CLI quotes newline and carriage-return
characters using "char(10)" and "char(13)".

FossilOrigin-Name: 8b2954dd8376e2de985cf5dedeb6eec32c430505

8 years agoIncrease the number of significant digits in floating point literals on
drh [Sat, 11 Mar 2017 00:46:57 +0000 (00:46 +0000)] 
Increase the number of significant digits in floating point literals on
".dump" output from the shell.

FossilOrigin-Name: 7359fcacaadc349f520536311dcd1d0b5cea7673

8 years agoRemove the rbu_round_trip.tcl script. It is now part of project "test-dbs".
dan [Fri, 10 Mar 2017 18:36:34 +0000 (18:36 +0000)] 
Remove the rbu_round_trip.tcl script. It is now part of project "test-dbs".

FossilOrigin-Name: b5bf2957677e8f2acd7426b302229a966de08fd9

8 years agoFix an error in the SQLITE_MAX_MEMORY implementation resulting from a bad
drh [Fri, 10 Mar 2017 17:03:11 +0000 (17:03 +0000)] 
Fix an error in the SQLITE_MAX_MEMORY implementation resulting from a bad
merge.  Update the OSSFuzz interface so that it times out after running
the byte-code engine for 10 seconds.

FossilOrigin-Name: f8560c60d10c0365b33342ab05b5a953987b0471

8 years agoAdd the -DSQLITE_MAX_MEMORY=N compile-time option. The default is no limit.
drh [Fri, 10 Mar 2017 16:22:40 +0000 (16:22 +0000)] 
Add the -DSQLITE_MAX_MEMORY=N compile-time option.  The default is no limit.

FossilOrigin-Name: eabd4ef498a0f0d97d65e321c4d06ab90523ed61

8 years agoAdd the SQLITE_MAX_MEMORY compile-time option that provides a hard upper bound max-memory-option
drh [Fri, 10 Mar 2017 15:55:54 +0000 (15:55 +0000)] 
Add the SQLITE_MAX_MEMORY compile-time option that provides a hard upper bound
on the amount of memory that SQLite will use, per process.

FossilOrigin-Name: 77dfe2abdae88dea81217f352d87e5ba2c822715

8 years agoEnhance the ".stats" dot-command in the CLI to use sqlite3_status64() instead
drh [Fri, 10 Mar 2017 14:36:10 +0000 (14:36 +0000)] 
Enhance the ".stats" dot-command in the CLI to use sqlite3_status64() instead
of sqlite3_status().

FossilOrigin-Name: 118f5c0564fef70cbd06fc0d9dbb2baec162cc39

8 years agoImprovements to ".selftest --init". Tests are number in increments of 10
drh [Fri, 10 Mar 2017 01:05:38 +0000 (01:05 +0000)] 
Improvements to ".selftest --init".  Tests are number in increments of 10
starting with 100.  The tests are generated inside a SAVEPOINT.  Errors are
reported during test generation.  Tests can be appended to existing tests.
Add a test case to verify the schema.

FossilOrigin-Name: b044b152aac2ec606750940ea816ad4a4aef8eb6

8 years agoRemove the test/dbselftest.c program. In its place, add the ".selftest"
drh [Thu, 9 Mar 2017 22:00:33 +0000 (22:00 +0000)] 
Remove the test/dbselftest.c program.  In its place, add the ".selftest"
command to the CLI.  The new CLI version is .selftest is slightly different
in that it uses SHA3 hashing instead of SHA1, so the new is subtly
incompatible with the old.

FossilOrigin-Name: f4fcd46f08ba59d2a3e772cad98383129f648386

8 years agoFix the ".dump" command to correctly extract tail data from corrupt
drh [Thu, 9 Mar 2017 18:13:52 +0000 (18:13 +0000)] 
Fix the ".dump" command to correctly extract tail data from corrupt
WITHOUT ROWID tables.

FossilOrigin-Name: 6c627e50622d8bcd25ec7d5503f3fafd725673a8

8 years agoBegin moving separate boolean variables in the ShellState object of the CLI
drh [Thu, 9 Mar 2017 13:50:49 +0000 (13:50 +0000)] 
Begin moving separate boolean variables in the ShellState object of the CLI
into the shellFlgs bitmask.

FossilOrigin-Name: 50eec5d9aa38fab1a85d788356ffdaf6c35d9ece

8 years agoMake sure the database connection is open prior to running the ".sha3sum"
drh [Wed, 8 Mar 2017 18:06:20 +0000 (18:06 +0000)] 
Make sure the database connection is open prior to running the ".sha3sum"
command.

FossilOrigin-Name: 2ea300fb8f7c497f3f092dc91f4305d8431c27d9

8 years agoIn the ".sha3sum" command, if there is a LIKE pattern, show the hashes for
drh [Wed, 8 Mar 2017 17:56:54 +0000 (17:56 +0000)] 
In the ".sha3sum" command, if there is a LIKE pattern, show the hashes for
each table separately.  Without a LIKE pattern, show a single hash over the
entire database.

FossilOrigin-Name: 30f878832820ce7ccc4627c4f0f98fbe82f8b0f6

8 years agoAdd the ".sha3sum" command to the CLI - used to compute a cryptographic hash
drh [Wed, 8 Mar 2017 16:10:34 +0000 (16:10 +0000)] 
Add the ".sha3sum" command to the CLI - used to compute a cryptographic hash
of the <em>content</em> of a database file or of individual tables with in
that file.

FossilOrigin-Name: fc663799075a22b0a61a6a114116bb2d1b96d4ab

8 years agoImproved comments explaining the sha3_query() format. Fix a performance #ifdef
drh [Wed, 8 Mar 2017 15:03:12 +0000 (15:03 +0000)] 
Improved comments explaining the sha3_query() format.  Fix a performance #ifdef
error in the sha3 implementation.

FossilOrigin-Name: 54ef7abd7f5b16f4b29c9519d283e142c9340fbf

8 years agoAdd the shathree.c extension for implementing SHA3() and SHA3_QUERY() SQL
drh [Wed, 8 Mar 2017 13:50:40 +0000 (13:50 +0000)] 
Add the shathree.c extension for implementing SHA3() and SHA3_QUERY() SQL
functions.

FossilOrigin-Name: f7ca9193ddafd3676406bdfeb1b7d21182c2a3c1

8 years agoIn the CLI, avoid unnecessary identifier quoting in the ".dump" output.
drh [Wed, 8 Mar 2017 12:25:18 +0000 (12:25 +0000)] 
In the CLI, avoid unnecessary identifier quoting in the ".dump" output.
Also add new ".dump" test cases.

FossilOrigin-Name: de65f907610a59e64cbf2214789c11f7117a86a6

8 years agoAdd the --preserve-rowids option to the ".dump" command in the CLI.
drh [Wed, 8 Mar 2017 11:44:00 +0000 (11:44 +0000)] 
Add the --preserve-rowids option to the ".dump" command in the CLI.

FossilOrigin-Name: c60aee24714a47ce12ee2a4dcefb9f55211d3761

8 years agoAdd test script ext/rbu/rbu_round_trip.tcl. Uses "dbselftest" to test that
dan [Tue, 7 Mar 2017 20:03:25 +0000 (20:03 +0000)] 
Add test script ext/rbu/rbu_round_trip.tcl. Uses "dbselftest" to test that
"rbu" and "sqldiff" work together.

FossilOrigin-Name: 961e79da73b4550b3e5b0f9a617133a76485db67

8 years agoPerformance optimization in the tokenizer/parser loop.
drh [Tue, 7 Mar 2017 14:38:52 +0000 (14:38 +0000)] 
Performance optimization in the tokenizer/parser loop.

FossilOrigin-Name: 2cb71583d631cd417acbeebbb4ee950573a9deef