Commit Graph

15554 Commits

Author SHA1 Message Date
drh 4ef07708df Enhance Lemon so that it reorders the reduce rules such that rules without
actions occur at the end and so that the first rule is number 0.  This
reduces the size of the jump table on the reduce switch, and helps the parser
to run faster.

FossilOrigin-Name: d5712f21ec758ff096a7b1bb8ed4fc5ec400ca5d
2016-03-16 19:45:54 +00:00
drh 3f77389bb4 Avoid a few unnecessary fstat()s on journal files.
FossilOrigin-Name: dbf84705913c0845ca4e75eb30c91536c754efeb
2016-03-16 19:10:46 +00:00
drh 892ffcc7fc Fix the query planner so that it is able to use the integer primary key
from an index as part of a multi-column constraint.

FossilOrigin-Name: 96ea9909429f0b3b4a67002e8340ae3f7dc0b73f
2016-03-16 18:26:54 +00:00
drh 32f57d4c37 Add the SQLITE_OMIT_CODEC_FROM_TCL compile-time option.
FossilOrigin-Name: 45f7f0c80bd91a0c7ff859c27fd9e82e551bd83e
2016-03-16 01:03:10 +00:00
drh c5db1d4b4c Rearrange some internal fields in the sqlite3_stmt object to avoid a harmless
TSAN warning.

FossilOrigin-Name: e0b116edd64a55c971c368685aa343cb6beed0f1
2016-03-16 00:36:19 +00:00
drh 98968b22c5 Change the OP_IntegrityCk opcode to accept the list of root pages as an
intarray argument in P4.  Slightly smaller and faster.

FossilOrigin-Name: 15e4a272df46cbad8e71b21551dc06a126d64d46
2016-03-15 22:00:39 +00:00
mistachkin b7b91068ee In the Win32 VFS, use SQLITE_FCNTL_LAST_ERRNO instead of (the older) SQLITE_LAST_ERRNO.
FossilOrigin-Name: 9463762c437488970a87093ef13131c39b2adadc
2016-03-15 19:10:39 +00:00
drh 0ff47e9e1b Implement FROM-clause subqueries as co-routines whenever they are guaranteed
to be the outer-most loop of the join.

FossilOrigin-Name: c7bae50bdccb5bcf3bc22e8ac5bb6725ef13db39
2016-03-15 17:52:12 +00:00
drh 82f525406a More test-case changes so that everything works when the reserved_bytes
value in the header is non-zero.

FossilOrigin-Name: 2fd095b14b03a508169bba710d2e8e2addf4b8f5
2016-03-15 12:37:08 +00:00
dan 089555c8e9 Fix the shellN.test test scripts so that they work with the --testdir option.
FossilOrigin-Name: 051c61ebae921b70f843c55aacf046a9922cc187
2016-03-15 09:55:44 +00:00
drh a580936383 Fix the permutations.test script so that it works again.
FossilOrigin-Name: 9f194f90c07d5415b1d6bb10ec049f74999d6885
2016-03-14 21:26:25 +00:00
drh 10ac13ae3b Update test scripts so that they work with SEE.
FossilOrigin-Name: f4693ba4bbd9738b45012cf507fc0d7b6d04b7ee
2016-03-14 21:12:26 +00:00
drh 4a8a646723 Changing page size using VACUUM or backup is not allowed with a codec attached.
FossilOrigin-Name: 92be06c1a828d56652fa5269a3029f8cb029b2cd
2016-03-14 20:49:24 +00:00
drh 05586c3284 Merge test script fixes from trunk.
FossilOrigin-Name: ea1d2cddd59192251ee5fd912b190cded4959879
2016-03-14 18:42:04 +00:00
drh 7da56b4f65 Many more test cases fixed. Only a few remain.
FossilOrigin-Name: 99b9d7eef68fd6d5c9eecb5fbe3dfe002c1ca4a8
2016-03-14 18:34:42 +00:00
drh af3906a798 Many test cases fixed to work with encryption.
FossilOrigin-Name: d866fffb8b1af5003a8730ce7029d1edddb24d46
2016-03-14 17:05:04 +00:00
drh 7bd6b49a3e Test script changes to support testing the SQLite Encryption Extension.
FossilOrigin-Name: 1c70aa5c014fc48ab06215992a61c6f92490abe4
2016-03-14 16:16:43 +00:00
dan de503eb166 Fix the backcompat.test script so that it works with the --testdir test option.
FossilOrigin-Name: f7480e33eb82f2eae219d17ce46cd2d4edac07d2
2016-03-14 15:43:03 +00:00
drh 0d71eaa368 Run TCL tests in the "testdir" subdirectory.
FossilOrigin-Name: 90e0cc7b0be31ee2f155c2c053b0cbac584f6154
2016-03-14 15:03:54 +00:00
drh e500f65a2c More file pathname normalization.
FossilOrigin-Name: fa8c12921f8361f1889724bb7c5f7eca9c48b075
2016-03-14 14:59:35 +00:00
drh bea14132cf Normalize the $testdir and $argv0 paths so that they continue to work
in the testing subdirectory.

FossilOrigin-Name: 19225b8130f1640772fc54250583b571a89063b6
2016-03-14 14:28:43 +00:00
drh d5704a8961 Run TCL tests in a subdirectory "testdir".
FossilOrigin-Name: f632bba0d6ad3edc60f4127380ce8320378dac42
2016-03-14 13:42:29 +00:00
dan 7d85774da8 Fix a memory leak in fts5 that could occur following a syntax error in a query expression.
FossilOrigin-Name: 54b8968e335760105206b894672213c1d56771a4
2016-03-14 12:16:23 +00:00
dan 5cf98f101e Fix a problem handling 'NEAR("" token)' in fts5 found by fuzzing.
FossilOrigin-Name: 10a827ae5f3f322af836c15e581fdc958a433a5a
2016-03-12 19:33:47 +00:00
dan e8c20120ce Fix handling of strings that contain zero tokens in fts5. And other problems found by fuzzing.
FossilOrigin-Name: 72b3ff0f0df83e62adda6584b4281cf086d45e45
2016-03-12 16:32:16 +00:00
drh ffbb02a361 Do not allow the use of WAL mode with nolock=1 because it does not work.
FossilOrigin-Name: 74f5d3b07f6e5e977858c73957c6f9337ae3ca3e
2016-03-11 23:07:30 +00:00
dan e1f1ffa55a Tweak the amalgamation autoconf files so that the --disable-static-shell option works again.
FossilOrigin-Name: 83efcdebfa255cd0663ecc6b74eb99183e2f3a10
2016-03-11 15:25:13 +00:00
drh 811f17bac0 Update spellfix1_scriptcode() to output 215 (latin) for pure numeric text.
FossilOrigin-Name: df44308b862e932ff0ad25b6328d13be22047b96
2016-03-11 14:30:18 +00:00
mistachkin a0ca3bc854 Check for PDB files prior to attempting to copy them in the MSVC batch build tool.
FossilOrigin-Name: d7c20f04e69fb1848b2e2f3b04fbd56e06c7c854
2016-03-10 19:08:44 +00:00
dan 1bb85f3ed3 Add tests to cover untested branches in recent fts5 changes.
FossilOrigin-Name: fa0033edf6ddf3c6631fa95b343225dbc8ac9429
2016-03-10 15:12:47 +00:00
drh ecdf20d3a4 Use #ifdefs to remove code that is unreachable in some configurations, replacing
it with an assert().

FossilOrigin-Name: f96ec84d605fd73c323344a753acf35b76307af9
2016-03-10 14:28:24 +00:00
drh 6459ca0b8c Remove an unused local variable.
FossilOrigin-Name: 3c343c3d012367942037e64a9855b825cb459844
2016-03-10 14:22:42 +00:00
dan 4dbc65b29a Add an incremental optimize capability to fts5. Make the 'merge' command independent of the 'automerge' settings.
FossilOrigin-Name: 556671444c03e3afca072d0f5e9bea2657de6fd3
2016-03-09 20:54:14 +00:00
dan 57ebc84a6e Fix a problem in fts3/4 that was causing it to discard data cached in-memory if an 'optimize' command is run when there is no data on disk. The usual way this would happen is if the very first transaction that writes to the fts3/4 table also includes an 'optimize' command.
FossilOrigin-Name: 79338b991bf01e81d336790ca87a0fa747da4ff3
2016-03-09 18:17:42 +00:00
drh 69c355bd9a Slight simplification to the query optimizer logic associated with IN (SELECT).
FossilOrigin-Name: 2c55c3c2950cafdc256ab540f60dc4609b9c354b
2016-03-09 15:34:51 +00:00
dan ab8aa11b96 Add another test case for bug [5e3c8867].
FossilOrigin-Name: d91e57e49f23414ec9211b775eb11cd6230a4f96
2016-03-09 15:14:54 +00:00
drh 90730c9e68 When optimizing expressions of the form "x IN (SELECT ...)" make sure that
the subquery is not correlated.  Fix for ticket [5e3c886796e5512].

FossilOrigin-Name: 1ed6b06ea3c432f920fb2b66b6042be906c5d21c
2016-03-09 15:09:22 +00:00
drh 7c621fb967 Automatically disable SQLITE_ENABLE_EXPLAIN_COMMENTS if SQLITE_OMIT_EXPLAIN
is defined.

FossilOrigin-Name: 8d4b6b2b519a80f831d64345ac26db825b0e2ebe
2016-03-09 13:39:43 +00:00
drh bacbbccd16 In the query planner, make sure OOM errors are reported up into
whereLoopAddVirtual() so that it shuts down appropriately.

FossilOrigin-Name: a13c59d08bcbc6f26ce6ac761a892eff8f035201
2016-03-09 12:35:18 +00:00
drh c5644346b6 Disable the bestindex*.test modules when building without virtual table support.
FossilOrigin-Name: e0bac2f3eed900d3a26de339fb7d5963f9b47724
2016-03-09 11:59:16 +00:00
drh d93b2b840d Simplifications to the memjournal.c logic to facilitate testing.
FossilOrigin-Name: 8baa2c2c7698e03418531482a8314a5d7ae2c7d3
2016-03-09 04:17:17 +00:00
drh 769b4c95ca Move the write failure test in memjrnlCreateFile() to just after the
actual write, thus reducing the number of instances of the test by one.

FossilOrigin-Name: 7f00d80c63b15376391f661d872f2b29a970702d
2016-03-09 03:44:32 +00:00
drh c1fb2b87bd Update a comment in btree.c to account for WITHOUT ROWID tables. No code
changes.

FossilOrigin-Name: fa20dcb03b92be3bb32f8e3d6f88681ace3f6c84
2016-03-09 03:29:27 +00:00
drh 2f1e02e8a7 Change a branch made obsolete by recent parser enhancements into an assert().
FossilOrigin-Name: ee486ef742557244f532e8d3b3604ff04e024b8a
2016-03-09 02:12:44 +00:00
drh 273021d71a Add an #ifdef and an ALWAYS() for coverage.
FossilOrigin-Name: 069337a922867ad0d023f5bf36e13ea46e047000
2016-03-09 02:03:03 +00:00
drh d1cca3b721 Change an unreachable branch in the virtual table query planner into
an assert().

FossilOrigin-Name: 73b97b9ec3c39ab2828ae6353b5d7e04a27996c9
2016-03-08 23:44:48 +00:00
drh 3349d9bea9 Improved comments on virtual table query planning. Added many new
WHERETRACE() macros.

FossilOrigin-Name: 4c89c2534abcf67bc486d5a900a84a6c4f59537e
2016-03-08 23:18:51 +00:00
drh c629e63a55 In memjournal.c, reuse the same sqlite3_file object for both the in-memory
phase and the on-disk phase.

FossilOrigin-Name: e7fbbdc25c0991d4e58d78a5fcb7386e1aa7f3af
2016-03-08 17:59:19 +00:00
dan 7ed4020890 Modify the memjournal.c code to make it a bit smaller.
FossilOrigin-Name: d99ac4154812065eef26c298de52954d7ee0bd75
2016-03-08 17:44:08 +00:00
drh 33b104af08 Drop support for SQLITE_EXTRA_DURABLE. The new SQLITE_DEFAULT_SYNCHRONOUS
compile-time option is a more general replacement.

FossilOrigin-Name: f6d3156ba9af1da517dd77c1df03fa7869888463
2016-03-08 16:07:59 +00:00