]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
8 years agoAvoid reading or writing the 32 locking bytes at the end of the first lsm-metapage-fix
dan [Thu, 29 Jun 2017 20:13:44 +0000 (20:13 +0000)] 
Avoid reading or writing the 32 locking bytes at the end of the first
meta-page of an LSM database.

FossilOrigin-Name: 2b5df3e8a80ae5c0415081dd9b29acaad1464be2e7971399e52c1c98408322d9

8 years agoFix issues in the POSIX and Win32 interfaces for lsm1.
mistachkin [Thu, 29 Jun 2017 19:08:52 +0000 (19:08 +0000)] 
Fix issues in the POSIX and Win32 interfaces for lsm1.

FossilOrigin-Name: 38ec41416679e8280d77c8a4913aa6a321784b1237a3fe409b8e256c5f4513de

8 years agoEdit comments in sqlite.h.in used for generating documentation, to improve
drh [Thu, 29 Jun 2017 17:27:04 +0000 (17:27 +0000)] 
Edit comments in sqlite.h.in used for generating documentation, to improve
the description of the new sqlite3_prepare_v3() interfaces, and other
miscellaneous cleanup.  No changes to executable code.

FossilOrigin-Name: 284707a7b3514a55cce24292e45632b7033d6edcff5b27deac5118b27c7b2954

8 years agoMore updates to the Win32 interface for lsm1.
mistachkin [Thu, 29 Jun 2017 16:51:52 +0000 (16:51 +0000)] 
More updates to the Win32 interface for lsm1.

FossilOrigin-Name: cae647696769c9fcdc3beafdfdf74d8384217f4b22820e4545093bea7be58f7c

8 years agoCorrect typo in the Win32 interface for lsm1.
mistachkin [Thu, 29 Jun 2017 15:57:42 +0000 (15:57 +0000)] 
Correct typo in the Win32 interface for lsm1.

FossilOrigin-Name: 1b4facb1ad0085aa52e63d4d432179467ddc2a69b668d49d86e65ead66a73f57

8 years agoAdd interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the
drh [Thu, 29 Jun 2017 15:24:57 +0000 (15:24 +0000)] 
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the
extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as
one bit in that argument.  Use the new option in FTS3, FTS5, and RTREE.

FossilOrigin-Name: 03977248e6fdaa9b35c15e5dd9bb89552f2f0a913cc31609b5af1e2347b67d38

8 years agoFurther corrections to the Win32 interface for lsm1.
mistachkin [Thu, 29 Jun 2017 15:13:48 +0000 (15:13 +0000)] 
Further corrections to the Win32 interface for lsm1.

FossilOrigin-Name: 4df6e2476ce93b9ca7a6959c8c2d6ef2c30395984b007d74166031dcf09d54b4

8 years agoRename the "stmts" virtual table to just "stmt" without the final "s".
drh [Thu, 29 Jun 2017 14:33:51 +0000 (14:33 +0000)] 
Rename the "stmts" virtual table to just "stmt" without the final "s".

FossilOrigin-Name: adfdb80105c46ac42b71132c80a91dbd5b1c9ff241fb4fbb5d04641a88898d90

8 years agoA couple fixes for the Win32 interface for lsm1.
mistachkin [Thu, 29 Jun 2017 14:17:48 +0000 (14:17 +0000)] 
A couple fixes for the Win32 interface for lsm1.

FossilOrigin-Name: ebbd98e941d8a8ea97b434c29b70095515af0adab1977aa4d37fe74a7401f846

8 years agoAdd the stmts virtual table to testfixture builds. Add new compile-time
drh [Thu, 29 Jun 2017 13:41:59 +0000 (13:41 +0000)] 
Add the stmts virtual table to testfixture builds.  Add new compile-time
options SQLITE_ENABLE_QPSG and SQLITE_ENABLE_STMTSVTAB to ctime.c

FossilOrigin-Name: 60c628293a1d8a1505e1a36dbd01b1f62bcfd7915e144044c92385423cbf8e07

8 years agoCompilation fix for lsm1 using MSVC.
mistachkin [Thu, 29 Jun 2017 13:35:44 +0000 (13:35 +0000)] 
Compilation fix for lsm1 using MSVC.

FossilOrigin-Name: b7794cc5d5abc13c6301c8d5c1b330405432c047f154083430fd15823221e552

8 years agoAdd the LSM1 extension.
drh [Thu, 29 Jun 2017 13:19:55 +0000 (13:19 +0000)] 
Add the LSM1 extension.

FossilOrigin-Name: 824e83274c04d24fd854bc7376c958ea6b05862efc562a3dfed0fc888fd96cc2

8 years agoAdd the "stmts" virtual table to the amalgamation, activated when compiled
drh [Thu, 29 Jun 2017 13:13:33 +0000 (13:13 +0000)] 
Add the "stmts" virtual table to the amalgamation, activated when compiled
using -DSQLITE_ENABLE_STMTSVTAB.  Add the SQLITE_STMTSTATUS_REPREPARE and
SQLITE_STMTSTATUS_RUN statistics outputs from sqlite3_stmt_status() and add
corresponding columns to the stmts virtual table.  Change the numeric value
of SQLITE_STMTSTATUS_MEMUSED to get it out of the way of counter values.

FossilOrigin-Name: 88976ae31c2cbc8b75f162140d1356132f69e5b30786e39ad8ca5a1774b03621

8 years agoThe query planner examines the values of bound parameters to help determine
drh [Thu, 29 Jun 2017 12:59:40 +0000 (12:59 +0000)] 
The query planner examines the values of bound parameters to help determine
if a partial index is usable.  Reprepares may happen if the bindings change.
This behavior is disabled by the QPSG setting.

FossilOrigin-Name: c322bfa27e88fc9e2c969c1e4ce12a7d541bd2f30e133d267eb2d15fd3477fde

8 years agoImplement xUnlink, xShmMap, and xShmUnmap for lsm1 on Win32. lsm-vtab
mistachkin [Thu, 29 Jun 2017 12:54:58 +0000 (12:54 +0000)] 
Implement xUnlink, xShmMap, and xShmUnmap for lsm1 on Win32.

FossilOrigin-Name: 680cc064c9e809ddc643074b5e65677f484d904b3d52826f6def480ddaa8f0ab

8 years agoAdd the SQLITE_STMTSTATUS_REPREPARE and SQLITE_STMTSTATUS_RUN options to stmts-vtab
drh [Thu, 29 Jun 2017 12:49:18 +0000 (12:49 +0000)] 
Add the SQLITE_STMTSTATUS_REPREPARE and SQLITE_STMTSTATUS_RUN options to
sqlite3_stmt_status().  Use this for two new columns in the stmts virtual
table.

FossilOrigin-Name: b0b0c8f8d548ef78584ab714ab120b01c1b83fc0d8ae2fd7626b970bab9fca58

8 years agoFix the exprCompareVariable() routine so that it works for non-UTF8 text. partial-index-variables
drh [Thu, 29 Jun 2017 01:23:12 +0000 (01:23 +0000)] 
Fix the exprCompareVariable() routine so that it works for non-UTF8 text.

FossilOrigin-Name: 25acd9658be792d686b3ebfaa8c3692f9830e043538ed0afecf97110a07758a4

8 years agoImplement xRemap for lsm1 on Win32. Also, zero file handle when closing it.
mistachkin [Thu, 29 Jun 2017 00:20:42 +0000 (00:20 +0000)] 
Implement xRemap for lsm1 on Win32.  Also, zero file handle when closing it.

FossilOrigin-Name: 93c9aa7d9aea46b331c53ff579ef704e88ce90f96600b69479a87a4bb4ca2a91

8 years agoAlternative implementation of exprCompareVariable(). Need to run tests on
drh [Wed, 28 Jun 2017 21:47:16 +0000 (21:47 +0000)] 
Alternative implementation of exprCompareVariable().  Need to run tests on
both this branch and the original to see which one to go with.

FossilOrigin-Name: b959c6297c151150ea2dca24aa1f68f3bd76dd6620eb6c03f8dfa59fdd5c13b2

8 years agoImplement xLock and xTestLock for lsm1 on Win32.
mistachkin [Wed, 28 Jun 2017 21:36:40 +0000 (21:36 +0000)] 
Implement xLock and xTestLock for lsm1 on Win32.

FossilOrigin-Name: 9112117dad8085c385aa614cd982b307f5822761607ba358f34df7848c549134

8 years agoMake the query planners use of partial indexes based on bound variables
drh [Wed, 28 Jun 2017 18:25:03 +0000 (18:25 +0000)] 
Make the query planners use of partial indexes based on bound variables
responsive to the SQLITE_DBCONFIG_ENABLE_QPSG setting.

FossilOrigin-Name: a934dd14ac55177ac541423f4a077484bb3b461b60c9c2e88d067cca922fa2bc

8 years agoMerge the in the latest enhancements from trunk.
drh [Wed, 28 Jun 2017 18:07:29 +0000 (18:07 +0000)] 
Merge the in the latest enhancements from trunk.

FossilOrigin-Name: 8f63c5863231eba7f853f9587b58a81102c31708402fa9962a6e91aa622fad13

8 years agoIncorporate recent trunk changes. prepare_v3
drh [Wed, 28 Jun 2017 15:56:58 +0000 (15:56 +0000)] 
Incorporate recent trunk changes.

FossilOrigin-Name: 62b8269ba2ff71e2daaa86688698896badd6f6e34ab42fbf92dda7fcda73a230

8 years agoBuild the "stmts" virtual table into the amalgamation. It is active only
drh [Wed, 28 Jun 2017 15:47:29 +0000 (15:47 +0000)] 
Build the "stmts" virtual table into the amalgamation.  It is active only
when compiled using SQLITE_ENABLE_STMTSVTAB.  That option is supplied to the
command-line shell.

FossilOrigin-Name: 0ff057d86e42e518fda22bfbf5f1977ab6bd0a74a9211ff259ee7e8a7ce98b58

8 years agoFix harmless compiler warnings in the CSV extension.
drh [Wed, 28 Jun 2017 15:17:31 +0000 (15:17 +0000)] 
Fix harmless compiler warnings in the CSV extension.

FossilOrigin-Name: f02a54599de7620438aecd3753199fc52ce8919d7503bb8b2f5592b0e51dbf8c

8 years agoFaster parser stack overflow detection.
drh [Wed, 28 Jun 2017 15:01:35 +0000 (15:01 +0000)] 
Faster parser stack overflow detection.

FossilOrigin-Name: 36e54cd8b1fb374fd41e3e09b34b86e34327bf07c9e4bfec58382163c5c5d279

8 years agoMinor tweak to the SQL grammar to make the parser tables a few bytes smaller.
drh [Wed, 28 Jun 2017 14:26:37 +0000 (14:26 +0000)] 
Minor tweak to the SQL grammar to make the parser tables a few bytes smaller.

FossilOrigin-Name: cc4810b23e683e8c359f7c1a562338ec8501e43cac3475b2be002568fca5e6a4

8 years agoIn the lemon-generated parser, store the number of symbols on the RHS of each
drh [Wed, 28 Jun 2017 13:47:56 +0000 (13:47 +0000)] 
In the lemon-generated parser, store the number of symbols on the RHS of each
rule as a negative number and add it to the stack pointer, rather than storing
the value as a positive and subtracting it.  This makes the parser faster.

FossilOrigin-Name: b362f0d8ed34839bf3b29d10ed0853ab94245fba135ccd28e619caa6ee6992d5

8 years agoIn the lemon-generated parser, automatically promote SHIFTREDUCE actions on
drh [Wed, 28 Jun 2017 11:56:18 +0000 (11:56 +0000)] 
In the lemon-generated parser, automatically promote SHIFTREDUCE actions on
nonterminal systems to pure REDUCE actions, for a performance enhancement.

FossilOrigin-Name: c46d94a8cde816ca383e771721ebd4900de77950cba700e35a26f70fd5b794a4

8 years agoSimplify error handling logic in sqlite3_exec() to save about 40 bytes.
drh [Wed, 28 Jun 2017 01:21:16 +0000 (01:21 +0000)] 
Simplify error handling logic in sqlite3_exec() to save about 40 bytes.

FossilOrigin-Name: 6480916c7266437cf8a70e5db2ca5c753ad71c361b68e41cbf8572f77c271920

8 years agoMinor code simplification in the ALTER TABLE logic.
drh [Wed, 28 Jun 2017 01:12:53 +0000 (01:12 +0000)] 
Minor code simplification in the ALTER TABLE logic.

FossilOrigin-Name: bfc4e7f30e4654b9603457fb6a4136828e346dcfe4e313fdf56ed62d131b7156

8 years agoAvoid an unnecessary call to sqlite3XPrintf() in the code generator, for
drh [Wed, 28 Jun 2017 00:55:50 +0000 (00:55 +0000)] 
Avoid an unnecessary call to sqlite3XPrintf() in the code generator, for
a performance improvement.

FossilOrigin-Name: 29d6ceb3838394d902e248d1eab627625a857dccb5ed0bb66161a13fafc500c8

8 years agoAdd SQLITE_DBCONFIG_ENABLE_QPSG that forces the query planner stability
drh [Tue, 27 Jun 2017 23:36:44 +0000 (23:36 +0000)] 
Add SQLITE_DBCONFIG_ENABLE_QPSG that forces the query planner stability
guarantee.  This is the fix for ticket [b9f010107724c]

FossilOrigin-Name: b82efd2a24914ace39acf99df75175042471fd73a8d31d66a40b15f63b342e10

8 years agoImprove a local variable name.
mistachkin [Tue, 27 Jun 2017 22:33:06 +0000 (22:33 +0000)] 
Improve a local variable name.

FossilOrigin-Name: d0f6973d93c36451bf64f47de9a88abec613a624603033bf6717f5071139b6d2

8 years agoInitial work on porting lsmtest to Win32.
mistachkin [Tue, 27 Jun 2017 22:27:54 +0000 (22:27 +0000)] 
Initial work on porting lsmtest to Win32.

FossilOrigin-Name: 7e669d9bfab237ff7ece821cf95cfd3bb753b1882b9a86044b7d4579808aecf4

8 years agoImplement xFullpath for Win32.
mistachkin [Tue, 27 Jun 2017 18:15:38 +0000 (18:15 +0000)] 
Implement xFullpath for Win32.

FossilOrigin-Name: dbe9c8aa8d70051fafec569054eeda6c02efe9d036ab6beada00da3ed42e52d9

8 years agoFix a virtual table problem that can occur when the vtab is on the RHS of a
dan [Tue, 27 Jun 2017 16:39:01 +0000 (16:39 +0000)] 
Fix a virtual table problem that can occur when the vtab is on the RHS of a
LEFT JOIN and there is a MATCH constraint in the ON clause, or when the vtab
is in a sub-query that is the RHS of a LEFT JOIN and there is a MATCH
constraint in the WHERE clause of the sub-query.

FossilOrigin-Name: 87b381663398f029f52cb5598aadd069b03034b6f833ce80ba762b406075a44e

8 years agoMinor corrections to the previous check-in.
mistachkin [Tue, 27 Jun 2017 06:28:00 +0000 (06:28 +0000)] 
Minor corrections to the previous check-in.

FossilOrigin-Name: e1cf8a78a0bbd7b05cefab22a5c9676098887ee9811d37330ce89b3367856f92

8 years agoWork in progress porting lsm1 to Win32.
mistachkin [Tue, 27 Jun 2017 05:59:47 +0000 (05:59 +0000)] 
Work in progress porting lsm1 to Win32.

FossilOrigin-Name: 2017636e93cf810fe4d1247c18de9f316fca037035a026f77c4588563d7bf0cc

8 years agoAdd the -withoutnulls option to the "db eval" method in the TCL interface.
drh [Mon, 26 Jun 2017 21:08:32 +0000 (21:08 +0000)] 
Add the -withoutnulls option to the "db eval" method in the TCL interface.

FossilOrigin-Name: 18f0616e15684ca327fb10a1d133331af1d3b75f609498982290f6ad69fcaced

8 years agoThe ".import" command of the shell, and the csv virtual table extension both
drh [Mon, 26 Jun 2017 18:42:23 +0000 (18:42 +0000)] 
The ".import" command of the shell, and the csv virtual table extension both
ignore a single UTF-8 BOM at the beginning of their input.

FossilOrigin-Name: 7c15d762d99c2e3e534cd35dfe25ddcd317637eb1f2655fd24c2dd5f9d5a7613

8 years agoMake sure sqlite3VdbeSetVarmask() is never invoked when QPSG is enabled. enable-QPSG
drh [Mon, 26 Jun 2017 14:46:05 +0000 (14:46 +0000)] 
Make sure sqlite3VdbeSetVarmask() is never invoked when QPSG is enabled.

FossilOrigin-Name: ebcfa73e1c8ebb4fc371a6dcf77f97b6e06e405a299c66182aa4b20423d519ec

8 years agoAdd the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner
drh [Mon, 26 Jun 2017 13:57:49 +0000 (13:57 +0000)] 
Add the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner
stability guarantee.  This involves refactoring the sqlite3.flags bitvector
to carve out a free bit to use.

FossilOrigin-Name: 7076e8283ebae1b45a5d85d9538b49b6da399d38c3c6935de100f948f814f6a9

8 years agoRemove an invalid assert() from lsm test code.
dan [Mon, 26 Jun 2017 11:46:01 +0000 (11:46 +0000)] 
Remove an invalid assert() from lsm test code.

FossilOrigin-Name: ca8a7e995c3da10ba05e3b7d4818c633fe5ba6d6f9351b67017a2603b50b903d

8 years agoFix another problem with multi-threaded mode in the LSM test code.
dan [Mon, 26 Jun 2017 08:24:35 +0000 (08:24 +0000)] 
Fix another problem with multi-threaded mode in the LSM test code.

FossilOrigin-Name: 461ced77d93e84f09bfb4291999cd0245506fa9a8369049fd68968bbcf18d41b

8 years agoUpdate a test case to reflect the fact that the lsm blocksize is configured in
dan [Mon, 26 Jun 2017 07:31:28 +0000 (07:31 +0000)] 
Update a test case to reflect the fact that the lsm blocksize is configured in
KiB. And defaults to 1024, not 2048.

FossilOrigin-Name: d7015475f121db1f56060716cd8adb73e9b52016890ec9018b620ef9d7d4fbff

8 years agoFix some compiler warnings in lsm_file.c.
dan [Mon, 26 Jun 2017 06:53:24 +0000 (06:53 +0000)] 
Fix some compiler warnings in lsm_file.c.

FossilOrigin-Name: 23f16382ed47a90bf5e6c1684d54d28484dca46fea20ca0f131bd477cf222bfb

8 years agoDisable shell tests for the .schema command if virtual tables are not available.
drh [Sat, 24 Jun 2017 19:21:48 +0000 (19:21 +0000)] 
Disable shell tests for the .schema command if virtual tables are not available.

FossilOrigin-Name: c8186874b3fec737445ad5c4ba3eaecd922af664b387d89dc31eea60476a0294

8 years agoConsider the values bound to SQL variables when determining whether or not a
dan [Sat, 24 Jun 2017 18:10:29 +0000 (18:10 +0000)] 
Consider the values bound to SQL variables when determining whether or not a
partial index may be used.

FossilOrigin-Name: 7b59c353b805c64689b4ae9df347705acbb5f116346ad77af8ce087da7893747

8 years agoMake sure the config.h header is included by ctime.c, if that header exists.
drh [Sat, 24 Jun 2017 16:35:00 +0000 (16:35 +0000)] 
Make sure the config.h header is included by ctime.c, if that header exists.

FossilOrigin-Name: c2ea62937ec8fabec72d3c7cd38d8e2cabbb5ce48638f8ce7ebefd6cd2716fd3

8 years agoQuery planner tuning: When deciding between two plans with the same cost,
drh [Sat, 24 Jun 2017 16:03:18 +0000 (16:03 +0000)] 
Query planner tuning:  When deciding between two plans with the same cost,
bias the selection toward the one that does not use the sorter.

FossilOrigin-Name: f0ec36d479ac4efaa0efd0594d032dd7b8ccdf84a4dc3644cd688762186fbcca

8 years agoMake sure enough memory is allocated for pathological quoting cases when
drh [Sat, 24 Jun 2017 13:31:40 +0000 (13:31 +0000)] 
Make sure enough memory is allocated for pathological quoting cases when
computing a quoted table name in the command-line shell.

FossilOrigin-Name: 0583b84ab444db3ae3c93db619b67bf84b0305ab989200e77214e02ff2dc923a

8 years agoWhen generating individual loops for each ORed term of an OR scan, move any
dan [Fri, 23 Jun 2017 15:47:05 +0000 (15:47 +0000)] 
When generating individual loops for each ORed term of an OR scan, move any
constant WHERE expressions outside of the loop, as is done for top-level
loops.

FossilOrigin-Name: 712267c9c08fdcef5d59cedc672657b55fd6a77472711711599f0bd653e6d880

8 years agoWhen generating individual loops for each ORed term of an OR scan, move any or-optimization
dan [Thu, 22 Jun 2017 16:51:16 +0000 (16:51 +0000)] 
When generating individual loops for each ORed term of an OR scan, move any
constant WHERE expressions outside of the loop, as is done for top-level
loops.

FossilOrigin-Name: e4a022be4b069b08cfdfda5295461676b99d28e17bbbedfbcb362dec69de59bd

8 years agoEnable pragma virtual tables for the integrity_check, quick_check, and
drh [Wed, 21 Jun 2017 01:36:30 +0000 (01:36 +0000)] 
Enable pragma virtual tables for the integrity_check, quick_check, and
foreign_key_check pragmas.

FossilOrigin-Name: 118f7bb33a6f78951bbffa957f48015d1bce5aaf9246a99262a90bc8ad52e5a3

8 years agoRename the azCompileOpt global constant to avoid a harmless compiler warning
drh [Tue, 20 Jun 2017 18:19:16 +0000 (18:19 +0000)] 
Rename the azCompileOpt global constant to avoid a harmless compiler warning
about a name conflict with a local variable.

FossilOrigin-Name: 94e420ecfb4ec047eb7d1d3125ca8487c90d466760b7f7183759ff922bd868d1

8 years agoEnsure that the query planner knows that any column of a flattened LEFT JOIN
dan [Tue, 20 Jun 2017 17:43:26 +0000 (17:43 +0000)] 
Ensure that the query planner knows that any column of a flattened LEFT JOIN
can be NULL even if that column is labeled with "NOT NULL".
Fix for ticket [892fc34f173e99d8].

FossilOrigin-Name: 483462682d3a57fb9dd85b4772596e9738f1694a454b8ebbc480b9452733e88d

8 years agoFix a missing comma in the previous check-in.
drh [Sat, 17 Jun 2017 18:49:50 +0000 (18:49 +0000)] 
Fix a missing comma in the previous check-in.

FossilOrigin-Name: f3db02f49073c3f08c3fd7816d85e5472d5e22df20d862fe4886eb2a97efb15f

8 years agoRework the code in ctime.c a bit to report on more compile time options. And
dan [Sat, 17 Jun 2017 17:55:33 +0000 (17:55 +0000)] 
Rework the code in ctime.c a bit to report on more compile time options. And
to only output configuration options passed in to SQLite, not the default
values of #define symbols set automatically. Also generate the large array in
ctime.c using new script tool/mkctime.tcl, instead of entering it manually.

FossilOrigin-Name: 9a443397a6b110f60cae32e1f758914d72931e16ddb423e4d4a119df526bf340

8 years agoEnsure that the value of the THREADSAFE symbol is always included when ctime-refactor
dan [Sat, 17 Jun 2017 17:29:24 +0000 (17:29 +0000)] 
Ensure that the value of the THREADSAFE symbol is always included when
reporting compile time options, even if it was not explicitly configured.

FossilOrigin-Name: 95141c642697dc037e57f9e4992ff3460155995d3caef6259235601ee722cb93

8 years agoAdd extra test cases for sqlite3changeset_apply() and ALTER TABLE ADD COLUMN.
dan [Sat, 17 Jun 2017 16:39:10 +0000 (16:39 +0000)] 
Add extra test cases for sqlite3changeset_apply() and ALTER TABLE ADD COLUMN.

FossilOrigin-Name: 603838fc9a65adda831a6a17b31b2e80f5b56e5946a9f0c1fa2c83d2f2a67f6a

8 years agoRework the code in ctime.c a bit to report on more compile time options. And
dan [Fri, 16 Jun 2017 19:51:47 +0000 (19:51 +0000)] 
Rework the code in ctime.c a bit to report on more compile time options. And
to only output configuration options passed in to SQLite, not the default
values of #define symbols set automatically. Also generate the large array in
ctime.c using new script tool/mkctime.tcl, instead of entering it manually.

FossilOrigin-Name: bc1951d699e6eeacbe15776a37cd0f5cf3f09eb85d3ae01cff43293cb286fcd7

8 years agoMinor refactoring change to clarify how ATTACH works. No functional changes.
drh [Fri, 16 Jun 2017 18:31:30 +0000 (18:31 +0000)] 
Minor refactoring change to clarify how ATTACH works.  No functional changes.

FossilOrigin-Name: 3944a32e1dd90ff903bcbaaa7cb497cebcfcb2ba2a326726ec2268505e524ae3

8 years agoPrevent pagesize changes on VACUUM in encrypted databases even when running
drh [Fri, 16 Jun 2017 13:43:37 +0000 (13:43 +0000)] 
Prevent pagesize changes on VACUUM in encrypted databases even when running
the VACUUM on an attached database.

FossilOrigin-Name: 11693849342a308ad929e2d9ead67faabacb523af76128c6973ed6cc8b62c11e

8 years agoMove the "shell_add_schema()" SQL function used by the ".schema" command
drh [Thu, 15 Jun 2017 16:56:05 +0000 (16:56 +0000)] 
Move the "shell_add_schema()" SQL function used by the ".schema" command
of the command-line shell to a different spot in the shell.c source file
so that it is not in the middle of an unrelated module.

FossilOrigin-Name: 254617a1ccfa1736d4e53d670d80319c79c4d93ebf1de69d89ebdba3949bc270

8 years agoFix typo and improve the wording of the description of "Metadata" in the
drh [Thu, 15 Jun 2017 16:45:23 +0000 (16:45 +0000)] 
Fix typo and improve the wording of the description of "Metadata" in the
output of the sqlite3_analyzer tool.

FossilOrigin-Name: ca1ff70780e07e5ee930fe7972db02e887d9b085d8ab78e878d7f966b6d684d4

8 years agoMerge the latest changes from trunk.
drh [Thu, 15 Jun 2017 15:06:26 +0000 (15:06 +0000)] 
Merge the latest changes from trunk.

FossilOrigin-Name: 60105c2253d0b617037e975b0d0b729bcb59b950aa2c33d8891394ad45aabb69

8 years agoFix harmless compiler warnings in the shell.c file
drh [Thu, 15 Jun 2017 13:07:56 +0000 (13:07 +0000)] 
Fix harmless compiler warnings in the shell.c file

FossilOrigin-Name: 9afd7a2ffd3a39456190ad05e85ff6485298aae262d9e0698a58c1d73507a36f

8 years agoImprovements to the ".tables" command in the command-line shell so that
drh [Thu, 15 Jun 2017 12:50:47 +0000 (12:50 +0000)] 
Improvements to the ".tables" command in the command-line shell so that
it shows the name of all schemas if the name is anything other than "main".

FossilOrigin-Name: c7f778b7cee16a1dcebccd256408ee1d08ef2b62e388a9ebba5738a0a89bf3a0

8 years agoIn the command-line shell, enhance the ".schema" command show that it
drh [Thu, 15 Jun 2017 12:21:09 +0000 (12:21 +0000)] 
In the command-line shell, enhance the ".schema" command show that it
shows the schema for ATTACH-ed databases in addition to "main".

FossilOrigin-Name: 48e086284a76da10a85315bc992e2294bd4711e35ec5a5abaa16e39a6a69d206

8 years agoEnhance the sqlite3_analyzer.exe utility so that it computes and shows the
drh [Thu, 15 Jun 2017 00:52:03 +0000 (00:52 +0000)] 
Enhance the sqlite3_analyzer.exe utility so that it computes and shows the
number of bytes of metadata on btree pages and per table and index entry.

FossilOrigin-Name: 43ad41efa9e1fdd79a9804197a227491236495f14ed56c656224d6ce181703c1

8 years agoFix sqlite3rbu_close() so that the pzErrmsg parameter may be passed NULL.
dan [Tue, 13 Jun 2017 16:52:34 +0000 (16:52 +0000)] 
Fix sqlite3rbu_close() so that the pzErrmsg parameter may be passed NULL.

FossilOrigin-Name: c433672dd8ab625628bde2f4f40a2dc000ed915dbe91833d3f753d8ab51baf25

8 years agoFix the processing of double-negatives in WHERE clause constraints with
drh [Tue, 13 Jun 2017 04:31:54 +0000 (04:31 +0000)] 
Fix the processing of double-negatives in WHERE clause constraints with
STAT4.  Ticket [cfa2c908f2182]

FossilOrigin-Name: 35b34bdf0843b49be39e13ed212e918c2d45afdb8374b5cd02ba6d2d5b16b3b9

8 years agoFix an off-by-one error that messes up the display of loop codes in the
drh [Sun, 11 Jun 2017 20:17:02 +0000 (20:17 +0000)] 
Fix an off-by-one error that messes up the display of loop codes in the
".wheretrace" debugging output for queries with more than 62 candidate
loops when SQLITE_ENABLE_WHERETRACE is on.

FossilOrigin-Name: 0bbdaf2801e4102d952db65e53962e534b67b8b72e76fadb4ce404a6249129d9

8 years agoWhen reusing a materialized view, make sure the estimated number of
drh [Sun, 11 Jun 2017 19:51:36 +0000 (19:51 +0000)] 
When reusing a materialized view, make sure the estimated number of
output rows is correctly initialized to avoid confusing the query planner.

FossilOrigin-Name: 87aceb417a813a2925b636cffa660fe25f3b7e3b3c84bb2108951bf0af644376

8 years agoFix the sessiondiff test module so that it does not run if the session
drh [Sun, 11 Jun 2017 19:40:34 +0000 (19:40 +0000)] 
Fix the sessiondiff test module so that it does not run if the session
extension is not enabled.

FossilOrigin-Name: 8f92b7a6223a69304dc8a6ab3b43a49cbb87f572a1e65d8a0c6dc09fca38e1a8

8 years agoFix a potential null-pointer deference following OOM introduced by
drh [Sun, 11 Jun 2017 18:26:15 +0000 (18:26 +0000)] 
Fix a potential null-pointer deference following OOM introduced by
check-in [e39795d7] (unreleased).

FossilOrigin-Name: a2f77285fa44df86863eed576271f1030ec60f15480daf175908c5082c27774b

8 years agoMerge enhancements and fixes from trunk.
drh [Fri, 9 Jun 2017 15:14:41 +0000 (15:14 +0000)] 
Merge enhancements and fixes from trunk.

FossilOrigin-Name: 3fd050c343256c0748256ef183b46df04d9e0da0f81b841dbd336034402b36ab

8 years agoUpdate the documentation to make it clear that the table name parameter
drh [Fri, 9 Jun 2017 11:43:53 +0000 (11:43 +0000)] 
Update the documentation to make it clear that the table name parameter
to sqlite3_table_column_metadata() may not be NULL.

FossilOrigin-Name: 2881ab1ed24ed72760086785bdf224c4e687cf39a02fd349ae13c6e1235e24da

8 years agoAdjust the implementation of the ".selftest" feature of the shell to avoid
drh [Fri, 9 Jun 2017 02:27:49 +0000 (02:27 +0000)] 
Adjust the implementation of the ".selftest" feature of the shell to avoid
using the deprecated sqlite3_get_table() interface.

FossilOrigin-Name: 3168e2c92ad0a0dafc78a27ee1d87ac89f426585f506f418a0182141335dc68b

8 years agoAdd a testcase() to confirm that an OOM on sqlite3DbStrNDup() is handled
drh [Thu, 8 Jun 2017 14:35:21 +0000 (14:35 +0000)] 
Add a testcase() to confirm that an OOM on sqlite3DbStrNDup() is handled
correctly in trigger.c.

FossilOrigin-Name: 343e55992f503efa662e49bb0f3c0d798defd0a11f2ee1c36968902fa7e06823

8 years agoEnsure pointer map entries are always added when a row that does use overflow
dan [Thu, 8 Jun 2017 11:14:08 +0000 (11:14 +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: b30dfba811cb531b09ff2e71a1a18ed53c816cb39155dd52ca3e2701425fe17b

8 years agoIn SQLITE_DEBUG mode, attempt to log the page number of the database that
drh [Wed, 7 Jun 2017 22:32:59 +0000 (22:32 +0000)] 
In SQLITE_DEBUG mode, attempt to log the page number of the database that
contained the problem when SQLITE_CORRUPT errors are seen.

FossilOrigin-Name: e39795d7d798d5249c7bd2a0f6ff891b455f4300a3d638c39a4668323b367666

8 years agoFix another lsmtest build problem. Add the "-trans BOOLEAN" option to "lsmtest
dan [Wed, 7 Jun 2017 19:46:18 +0000 (19:46 +0000)] 
Fix another lsmtest build problem. Add the "-trans BOOLEAN" option to "lsmtest
speed2".

FossilOrigin-Name: 61853bc171e7c3af1db6a33ac8b1ad21e1c08e8d6b317fe061fdcd89c9a42e88

8 years agoMerge in trunk enhancements.
drh [Wed, 7 Jun 2017 16:25:25 +0000 (16:25 +0000)] 
Merge in trunk enhancements.

FossilOrigin-Name: f8bbb608cbf6c245628e3d362e9181fb3dc402b1d8241bcb687caf395f63c916

8 years agoAdd the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated
drh [Tue, 6 Jun 2017 18:20:43 +0000 (18:20 +0000)] 
Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated
number of rows in tables that lack sqlite_stat1 entries.

FossilOrigin-Name: 234ede26e30f20e6c33002739ed8be35dbfb5c77700bd857ff31072b9b7df347

8 years agoFix a threading problem in lsm test code.
dan [Tue, 6 Jun 2017 16:14:49 +0000 (16:14 +0000)] 
Fix a threading problem in lsm test code.

FossilOrigin-Name: 501238b9fbb4eece084b4bfce84a5f37a986f34db8081df517e60ef81f357454

8 years agoFix a subtle bug in the remember UDF of the kvtest.exe utility program.
drh [Mon, 5 Jun 2017 19:20:35 +0000 (19:20 +0000)] 
Fix a subtle bug in the remember UDF of the kvtest.exe utility program.

FossilOrigin-Name: 9eea3670e77e2f831b7c00ae2d65a5583f9cad626d9ab286f92582ef29ecd4e3

8 years agoFix a bug in test_fs.c that occurs when the first component of a path contains
dan [Mon, 5 Jun 2017 16:33:53 +0000 (16:33 +0000)] 
Fix a bug in test_fs.c that occurs when the first component of a path contains
a GLOB or LIKE escape character.

FossilOrigin-Name: 73c70590d7689806901378cd2a7e167ec4339f886031369266e07868acd23b93

8 years agoFor the kvtest utility, add the --vacuum option to "kvtest stat" and also
drh [Mon, 5 Jun 2017 13:28:17 +0000 (13:28 +0000)] 
For the kvtest utility, add the --vacuum option to "kvtest stat" and also
run PRAGMA integrity_check with "kvtest stat".

FossilOrigin-Name: f3c25df4562efda2adeb211a4cc893246354917849a0fa4d95da3d7970e9588e

8 years agoFix the column width deduction logic in the command-line shell to account
drh [Mon, 5 Jun 2017 12:29:26 +0000 (12:29 +0000)] 
Fix the column width deduction logic in the command-line shell to account
for multi-byte utf8 characters.

FossilOrigin-Name: ed0842c156ab1a78d5d00d3a55dab5e3f08cd349328d606724688f1528df3f6b

8 years agoOmit some of the fstree tests in vtabH if the PWD contains LIKE wildcards.
drh [Mon, 5 Jun 2017 10:31:03 +0000 (10:31 +0000)] 
Omit some of the fstree tests in vtabH if the PWD contains LIKE wildcards.

FossilOrigin-Name: ead29f9cb757a5f9921086e3bb4998f60e0d6cfcf41ef0f9a230b365b6226947

8 years agoInitialize a variable to zero to prevent an (incorrect) compiler warning of
drh [Sat, 3 Jun 2017 20:09:37 +0000 (20:09 +0000)] 
Initialize a variable to zero to prevent an (incorrect) compiler warning of
it potentially being uninitialized.

FossilOrigin-Name: 65182ce041b30cd0193b958eca975b720fe5200a868baba1e633e49433d86813

8 years agoFix the SQLITE_PTR_TO_INT macro so that works on recent versions of LLVM on
drh [Sat, 3 Jun 2017 19:16:29 +0000 (19:16 +0000)] 
Fix the SQLITE_PTR_TO_INT macro so that works on recent versions of LLVM on
Macs.

FossilOrigin-Name: c4089ffbdb4b3467648c97044b0d3085da7128103079b686f608efde83c7df30

8 years agoRemove unused header file from kvtest.
drh [Sat, 3 Jun 2017 18:27:49 +0000 (18:27 +0000)] 
Remove unused header file from kvtest.

FossilOrigin-Name: dd7e043f7c9e16cd98a273b7105fa74bdd14a93db8cd5bde064cc1c40591155c

8 years agoIn kvtest, add the ability to work with a hierarchy of files on disk,
drh [Sat, 3 Jun 2017 17:24:04 +0000 (17:24 +0000)] 
In kvtest, add the ability to work with a hierarchy of files on disk,
in addition to having all files in the same directory.

FossilOrigin-Name: f568f666c85ab9b80592927dc033cfd65bd4415576cf5b3beaf300d68a8e074e

8 years agoAdd the --nocheckpoint and --multitrans options to kvtest.
drh [Sat, 3 Jun 2017 15:17:21 +0000 (15:17 +0000)] 
Add the --nocheckpoint and --multitrans options to kvtest.

FossilOrigin-Name: 5828633c2392274b6863b50eaffbb2a176a4d892e83542824a9a3f0d1b62c967

8 years agoMerge all recent trunk enhancements.
drh [Fri, 2 Jun 2017 23:44:38 +0000 (23:44 +0000)] 
Merge all recent trunk enhancements.

FossilOrigin-Name: 1d23294d88b1a80fe1f5403ea4fd75e61bb4932d5b714ea450d1b4b84f0896ab

8 years agoAdd the --fsync flag to kvtest, and document the --nosync flag.
drh [Fri, 2 Jun 2017 23:32:17 +0000 (23:32 +0000)] 
Add the --fsync flag to kvtest, and document the --nosync flag.

FossilOrigin-Name: 7fdc78a672b2ea6187dcb5fdf32f809bb8e4d501e2434f2233edc3bc2e3acc7c

8 years agoWork toward enhancing kvtest to measure write performance.
drh [Fri, 2 Jun 2017 19:31:46 +0000 (19:31 +0000)] 
Work toward enhancing kvtest to measure write performance.

FossilOrigin-Name: fc73e7d2f16386f96c55c42f9830193f7c178521a7ad90c3117b85ef629b5ce4