]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
8 years agoImproved comments. Fix a problem when an indexed expression is used in an covering-index-on-expr
drh [Tue, 11 Apr 2017 01:01:27 +0000 (01:01 +0000)] 
Improved comments.  Fix a problem when an indexed expression is used in an
ORDER BY clause.

FossilOrigin-Name: c59eaf2b7cd2596733f349fc0fe979f71fd29bd73152a0c57066e0b69d5b7a4a

8 years agoMerge changes from trunk.
drh [Mon, 10 Apr 2017 23:42:04 +0000 (23:42 +0000)] 
Merge changes from trunk.

FossilOrigin-Name: 8978465f335925378d3aa99df6190ce6a1ee6b130205ccc493f2399803844760

8 years agoSmaller and faster vdbeFreeOpArray()
drh [Mon, 10 Apr 2017 20:51:21 +0000 (20:51 +0000)] 
Smaller and faster vdbeFreeOpArray()

FossilOrigin-Name: e052436d9f54b785facd661adc648512356b831c0547aa8f347ebf4bd8ef1254

8 years agoSlightly smaller and faster sqlite3VdbeMemGrow().
drh [Mon, 10 Apr 2017 20:27:54 +0000 (20:27 +0000)] 
Slightly smaller and faster sqlite3VdbeMemGrow().

FossilOrigin-Name: efd1702ae8da8e0dd3d2ee7bd5a1bd8aeff2b370498e404041fcb406fdaf72e4

8 years agoAdd a new JSON test case to verify that all control characters are escaped
drh [Mon, 10 Apr 2017 12:31:15 +0000 (12:31 +0000)] 
Add a new JSON test case to verify that all control characters are escaped
in the json_quote() function.

FossilOrigin-Name: 6ee12221fa252784c897a24ae8cff64dfe6149cbc9020abe14539df33202d892

8 years agoChange the JSON extension so that it disallows control characters inside of
drh [Mon, 10 Apr 2017 12:25:05 +0000 (12:25 +0000)] 
Change the JSON extension so that it disallows control characters inside of
strings.  Fix for ticket [6c9b5514077fed34551f98e64c09a10dc2fc8e16].

FossilOrigin-Name: 475d8f82ec61a4ff3e6a7650731230ccecb6cc580d1397d189d0ba479d9bad4d

8 years agoDo not expose the name of the internal Mem object in the public interface
drh [Sun, 9 Apr 2017 19:23:55 +0000 (19:23 +0000)] 
Do not expose the name of the internal Mem object in the public interface
defined by sqlite3.h.

FossilOrigin-Name: 19dd753f9e50fee247b1ab141669817c7e88bc3f6d6065dba6c731db9f7a2409

8 years agoDisallow leading zeros on numeric constants in JSON.
drh [Sat, 8 Apr 2017 18:18:22 +0000 (18:18 +0000)] 
Disallow leading zeros on numeric constants in JSON.
Fix for ticket [b93be8729a895a528e2]

FossilOrigin-Name: 204e72f0080e8f08f99978870bd3cb9d59b068ecffee82192d707c650548b43b

8 years agoExpand on the comment above OP_Destroy to explain why it throws an error if
dan [Sat, 8 Apr 2017 14:11:47 +0000 (14:11 +0000)] 
Expand on the comment above OP_Destroy to explain why it throws an error if
there are any active reader VMs.

FossilOrigin-Name: b9a8c2b9bec9f537b2d5aff6659a5748b1f70b53519a1f9dfceb5209154eca8e

8 years agoHave the rtree module close any open blob-handle within the xSavepoint method.
dan [Sat, 8 Apr 2017 13:52:41 +0000 (13:52 +0000)] 
Have the rtree module close any open blob-handle within the xSavepoint method.
This prevents such an open blob handle from interfering with DROP TABLE
operations.

FossilOrigin-Name: fa4416adc2a9a3a80db1d5befc0b95c3d0fc41affe38f7f2f45cdfae3f1b49eb

8 years agoFix the quoting mechanism for ".dump" so that it is not applied for the
drh [Sat, 8 Apr 2017 13:42:55 +0000 (13:42 +0000)] 
Fix the quoting mechanism for ".dump" so that it is not applied for the
".mode quote" output.

FossilOrigin-Name: 78c1e90305d48917d9423d8e50a7dfd15ec27aa93cb421610062229c7ede13a6

8 years agoHave fts5 close any open blob-handle when a new savepoint is opened. This
dan [Sat, 8 Apr 2017 09:12:20 +0000 (09:12 +0000)] 
Have fts5 close any open blob-handle when a new savepoint is opened. This
ensures that fts5 does not prevent DROP TABLE statements (which always open a
savepoint) from succeeding.

FossilOrigin-Name: a921ada89050ce1d162fd1b0056939573635e2cec7ac0c2a99ae924b3ae593f7

8 years agoMake sure the RTree sqlite3_blob handle is reset prior to renaming the table.
drh [Sat, 8 Apr 2017 01:09:14 +0000 (01:09 +0000)] 
Make sure the RTree sqlite3_blob handle is reset prior to renaming the table.

FossilOrigin-Name: 1cdae2db3c54970a1811e597065724578408c84d49d75b8fe25d56281ddc2e94

8 years agoFix the ".dump" command so that it works with ".headers on". Also fix the
drh [Sat, 8 Apr 2017 00:55:13 +0000 (00:55 +0000)] 
Fix the ".dump" command so that it works with ".headers on".  Also fix the
display of ".mode insert" with ".headers on".

FossilOrigin-Name: a6ce57ee3c7f3527554a75cc1dd5ebcd33c944d4dca07b134d103596a2ae5b32

8 years agoUse replace() instead of char() to quote newline and return characters in
drh [Fri, 7 Apr 2017 20:20:08 +0000 (20:20 +0000)] 
Use replace() instead of char() to quote newline and return characters in
strings in the output of .dump, to avoid excess expression complexity.

FossilOrigin-Name: 7307352988174a6c2756dbbe200bf62a45fb4cc1da7faa2c6b0f75e229eab703

8 years agoRemove an unused token type.
drh [Fri, 7 Apr 2017 19:52:13 +0000 (19:52 +0000)] 
Remove an unused token type.

FossilOrigin-Name: 13a422230dcf4a8a80434af97434d57e456dcaa6bf0c41e6859f37ded6fa96ca

8 years agoProof of concept for the ability to use the expression columns in an index
drh [Fri, 7 Apr 2017 19:41:31 +0000 (19:41 +0000)] 
Proof of concept for the ability to use the expression columns in an index
on expressions in place of equivalent expressions in the result set or in
the WHERE clause.  This check-in compiles but is mostly untested.

FossilOrigin-Name: a52ef2ad7c0e14b78b801f16a1f6ea8d8fa9ae5d7d810e18dd24c600b662a312

8 years agoUse replace() instead of char() to quote newline and return characters in shell-fix
drh [Fri, 7 Apr 2017 11:45:58 +0000 (11:45 +0000)] 
Use replace() instead of char() to quote newline and return characters in
strings in the output of .dump, to avoid excess expression complexity.

FossilOrigin-Name: 4c2b572969ea2ed2a925444ecfa356aa877018cbb9c4f57d081ab4b535cd1dd0

8 years agoFix the ".lint fkey" shell command for cases where the child key is also an
dan [Thu, 6 Apr 2017 14:56:26 +0000 (14:56 +0000)] 
Fix the ".lint fkey" shell command for cases where the child key is also an
INTEGER PRIMARY KEY.

FossilOrigin-Name: 48826b222c110a90996a84605318ea6b1e502b8c5129f4d561f8350dbdbcd264

8 years agoFix the ".lint fkey" shell tool command so that it works for foreign keys that
dan [Thu, 6 Apr 2017 12:06:56 +0000 (12:06 +0000)] 
Fix the ".lint fkey" shell tool command so that it works for foreign keys that
refer implicitly to primary key columns with non-BINARY default collation
sequences.

FossilOrigin-Name: 327eff25ba2420267cc8dc49dd3c3aab45f4bf9e060d1ad480e25d016d21f3ba

8 years agoRemove a confusing and pointless sentence from the documentation for the
drh [Wed, 5 Apr 2017 13:44:40 +0000 (13:44 +0000)] 
Remove a confusing and pointless sentence from the documentation for the
sqlite3_interrupt() interface.

FossilOrigin-Name: c5f1a2b6eb3df879d247a22b3f92f4f74fcf4f0d219450abc420ae6d02481324

8 years agoSplit off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where
drh [Wed, 5 Apr 2017 12:39:49 +0000 (12:39 +0000)] 
Split off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where
we know that the argument to be freed is never NULL.

FossilOrigin-Name: ad90e8bb5e47945607c8fb47b6ade8cfc52a9b684805cc40132629be0ecc14cc

8 years agoSave a few bytes and a few CPU cycles in sqlite3ExprListDelete() routine.
drh [Wed, 5 Apr 2017 11:57:56 +0000 (11:57 +0000)] 
Save a few bytes and a few CPU cycles in sqlite3ExprListDelete() routine.

FossilOrigin-Name: 9e6c939144a129b36bb119120442a4a021e00187783da211315d4bb13acd7c3a

8 years agoRemove a conditional made unreachable by the previous ExprList enhancement.
drh [Wed, 5 Apr 2017 11:49:06 +0000 (11:49 +0000)] 
Remove a conditional made unreachable by the previous ExprList enhancement.

FossilOrigin-Name: a1cf44763277b6c745b5b5509ca9129b6c3231608b4d1c8aec2815b64b5a2a07

8 years agoCombine the ExprList_item objects and the ExprList wrapper into a single
drh [Wed, 5 Apr 2017 11:32:13 +0000 (11:32 +0000)] 
Combine the ExprList_item objects and the ExprList wrapper into a single
memory allocation, for improved performance and reduced footprint.

FossilOrigin-Name: 2b6560ad88b92820c383bcdc1e30c06f8b081ef7c6d9b1af71d2bb76c83e35cd

8 years agoAttempt to remove bash-isms from configure.ac. Use -O0 with --enable-debug.
drh [Wed, 5 Apr 2017 10:54:14 +0000 (10:54 +0000)] 
Attempt to remove bash-isms from configure.ac.  Use -O0 with --enable-debug.

FossilOrigin-Name: 71ed35ccf7c0f6c49118a44cf6621f46b9ea883e4a74d51b8b1ade6d9a95413a

8 years agoFix a problem causing "PRAGMA integrity_check" to disable the xfer
dan [Tue, 4 Apr 2017 19:58:54 +0000 (19:58 +0000)] 
Fix a problem causing "PRAGMA integrity_check" to disable the xfer
optimization for subsequent VACUUM operations on tables with one or more CHECK
constraints. This could result in VACUUM producing slightly larger database
files.

FossilOrigin-Name: e5bb7db51cdfd8124c60329782798cea398733545594dab55cb892b2a08c4d29

8 years agoAvoid an unnecessary call to sqlite3WhereGetMask() inside of whereShortCut().
drh [Mon, 3 Apr 2017 14:07:08 +0000 (14:07 +0000)] 
Avoid an unnecessary call to sqlite3WhereGetMask() inside of whereShortCut().

FossilOrigin-Name: 5c11f4303f6a33d6358f451244551be63baf9afe5630332e60b349215e20a3af

8 years agoDo not attempt to run sync2.test with SQLITE_DISABLE_DIRSYNC builds.
dan [Mon, 3 Apr 2017 13:59:22 +0000 (13:59 +0000)] 
Do not attempt to run sync2.test with SQLITE_DISABLE_DIRSYNC builds.

FossilOrigin-Name: 658f08ce84b45f057843263961f6c47a322f841764134ec38f35719f0f2042d7

8 years agoForce a schema load prior to "PRAGMA optimize".
drh [Mon, 3 Apr 2017 13:33:51 +0000 (13:33 +0000)] 
Force a schema load prior to "PRAGMA optimize".

FossilOrigin-Name: 86897c24c0b35ffea8df72d86a099addf67de210c6568aaba22ef92f1a60c3cf

8 years agoFix typos in the documentation for OP_Column.
drh [Mon, 3 Apr 2017 13:17:31 +0000 (13:17 +0000)] 
Fix typos in the documentation for OP_Column.

FossilOrigin-Name: 777b43e64ffb2fb80ba7b705c129c133bf9787993a66cde1759dc070b324b4b4

8 years agoSlightly smaller and faster implementation for vdbeSorterCompareInt().
drh [Mon, 3 Apr 2017 12:04:39 +0000 (12:04 +0000)] 
Slightly smaller and faster implementation for vdbeSorterCompareInt().

FossilOrigin-Name: 84fa069c5bdfe41d03d03875c9157cc6785150b677c04e40b8916ba5af073dc8

8 years agoRemove an unnecessary setting of the Mem.enc field for the output of the
drh [Sat, 1 Apr 2017 20:44:26 +0000 (20:44 +0000)] 
Remove an unnecessary setting of the Mem.enc field for the output of the
OP_Record opcode, for a performance improvement and size reduction.

FossilOrigin-Name: e6e36b288fdf21b7ff7f0bf85d2225b6505f54367b183c302c93c34a4a40b8b5

8 years agoMinor performance enhancements to the OP_Affinity opcode.
drh [Sat, 1 Apr 2017 20:14:01 +0000 (20:14 +0000)] 
Minor performance enhancements to the OP_Affinity opcode.

FossilOrigin-Name: c45cd3b947c0f03a688f827fddb4629a986788f0dd98d5ef899f11e68ff1c202

8 years agoRemove an unnecessary clearing of the Vdbe.iCurrentTime value.
drh [Sat, 1 Apr 2017 19:45:20 +0000 (19:45 +0000)] 
Remove an unnecessary clearing of the Vdbe.iCurrentTime value.

FossilOrigin-Name: fcd2acdd6075aa9a7a66ce254eba77485f7b2804127e109c0309173488cd4b87

8 years agoFaster implementation for sqlite3VdbeIntValue() and sqlite3VdbeRealValue().
drh [Sat, 1 Apr 2017 11:59:36 +0000 (11:59 +0000)] 
Faster implementation for sqlite3VdbeIntValue() and sqlite3VdbeRealValue().

FossilOrigin-Name: 8698df60c23d4dcc80b58352c14ae80ec238cac496f8a87bd72a96fef61cc63f

8 years agoRemove unused fields from the BtCursor object.
drh [Sat, 1 Apr 2017 11:40:05 +0000 (11:40 +0000)] 
Remove unused fields from the BtCursor object.

FossilOrigin-Name: 1c0d82e0786ed22d07d774b8b166340fad97bcaab6016e395c469bcfcb7c77a3

8 years agoSave a 78 bytes of code space and a million CPU cycles in speedtest1 by
drh [Sat, 1 Apr 2017 00:20:06 +0000 (00:20 +0000)] 
Save a 78 bytes of code space and a million CPU cycles in speedtest1 by
storing the cell index for the leaf page in the BtCursor object in its own
field (BtCursor.ix), rather than as an entry in the BtCursor.aiIdx array.

FossilOrigin-Name: 2452f0617d1085689264b5f66681788cfe9e3b1a7b318307c93942b702a443df

8 years agoDeclare the Lemon-generated parser object as itself. (Duh)
drh [Thu, 30 Mar 2017 17:13:37 +0000 (17:13 +0000)] 
Declare the Lemon-generated parser object as itself.  (Duh)

FossilOrigin-Name: c8000e94cca59dabf83d6cb75b40441aaf793d29880582dc4baa17246449b5fe

8 years agoIncrease the version number for the next development cycle.
drh [Thu, 30 Mar 2017 16:51:35 +0000 (16:51 +0000)] 
Increase the version number for the next development cycle.

FossilOrigin-Name: 9e550ccc29f317422dae3a4bb89a78b839330825fecd40a01d1a2acc719cef79

8 years agoEnsure that the stack space used to hold the Lemon-generated parser object
drh [Thu, 30 Mar 2017 16:37:05 +0000 (16:37 +0000)] 
Ensure that the stack space used to hold the Lemon-generated parser object
is always 8-byte aligned.

FossilOrigin-Name: 1279de0b70cabf39899d92ece8852a780fd800bf3154971537b3427e5bd3ca50

8 years agoWhen compiling with MSVC, disable extra SELECT/WHERE tracing for dynamically built...
mistachkin [Wed, 29 Mar 2017 23:22:18 +0000 (23:22 +0000)] 
When compiling with MSVC, disable extra SELECT/WHERE tracing for dynamically built shells.

FossilOrigin-Name: a68919425c528b887e66b588a73a619f0506cb06855350e0ec8f844acf64d8f7

8 years agoAvoid unnecessary blob handle invalidation when changes are made to an
drh [Wed, 29 Mar 2017 18:03:50 +0000 (18:03 +0000)] 
Avoid unnecessary blob handle invalidation when changes are made to an
unrelated table.

FossilOrigin-Name: 4a01880b62706c12d6f16f7c2b5c8b0dc67a9a8a0a48c5b42451e1a133e85611

8 years agoSlightly smaller and faster implementation of pcache1InitBulk().
drh [Wed, 29 Mar 2017 17:06:14 +0000 (17:06 +0000)] 
Slightly smaller and faster implementation of pcache1InitBulk().

FossilOrigin-Name: 06c2b685e15b3ee045a3e7ea018701392771c7664e59a51c9aba87cdefeb37af

8 years agoFix some tests in malloc5.test to account for the sqlite3_release_memory()
dan [Wed, 29 Mar 2017 16:55:23 +0000 (16:55 +0000)] 
Fix some tests in malloc5.test to account for the sqlite3_release_memory()
change in the previous commit.

FossilOrigin-Name: d336858dfcfb9539c43582b1443911df825f9af7146957734bc6f01c8f4d98e3

8 years agoFix the sqlite3_release_memory() interface so that it works even if
drh [Wed, 29 Mar 2017 15:18:40 +0000 (15:18 +0000)] 
Fix the sqlite3_release_memory() interface so that it works even if
SQLITE_DEFAULT_PCACHE_INITSZ is non-zero.

FossilOrigin-Name: 5d902b7fea3144bf57f02aca87b9795fdcec4774310ade6ef01f37d206c3d74f

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