]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
10 years agoUpdate the PRAGMA data_version command so that it reponse to changes made data_version_pragma
drh [Sat, 20 Dec 2014 14:34:02 +0000 (14:34 +0000)] 
Update the PRAGMA data_version command so that it reponse to changes made
by a shared-cache database connection, and also to changes made by the same
database connection.  Add test cases to verify the new behavior.

FossilOrigin-Name: 44ee538374940c50198949f2cbb9213ba2375b6a

10 years agoAdding test cases for the "PRAGMA data_version" command.
drh [Fri, 19 Dec 2014 20:27:02 +0000 (20:27 +0000)] 
Adding test cases for the "PRAGMA data_version" command.

FossilOrigin-Name: c5fb7d6a106d46f10e71abe3a6d4243b21ed02a5

10 years agoExperimental "PRAGMA data_version" command for detecting when another process
drh [Fri, 19 Dec 2014 19:28:02 +0000 (19:28 +0000)] 
Experimental "PRAGMA data_version" command for detecting when another process
has changed the database file.

FossilOrigin-Name: 43db1f44bce5a0ee50197b95ab0d844540b69d86

10 years agoSimplify the implementation of the "header-value" pragmas (schema_version,
drh [Fri, 19 Dec 2014 18:49:55 +0000 (18:49 +0000)] 
Simplify the implementation of the "header-value" pragmas (schema_version,
user_version, freelist_count, and application_id) by making them more
table-driven.

FossilOrigin-Name: da27a09d1d991583b59997f6cc67efa28ffd9d6a

10 years agoExperimental opimizations to speed up FK constraint CASCADE and SET NULL action proce...
dan [Wed, 17 Dec 2014 15:03:50 +0000 (15:03 +0000)] 
Experimental opimizations to speed up FK constraint CASCADE and SET NULL action processing.

FossilOrigin-Name: 8c5dd6cc259e0cdaaddaa52ccfa96fee6b166906

10 years agoFix some comments in fkey.c. Add tests to fkey8.test. experimental-fk-actions
dan [Wed, 17 Dec 2014 14:38:45 +0000 (14:38 +0000)] 
Fix some comments in fkey.c. Add tests to fkey8.test.

FossilOrigin-Name: 210cb2a6aaf780365064a26c0c99926bd6346e19

10 years agoExperimental opimizations to speed up FK constraint CASCADE and SET NULL action proce...
dan [Tue, 16 Dec 2014 20:13:30 +0000 (20:13 +0000)] 
Experimental opimizations to speed up FK constraint CASCADE and SET NULL action processing.

FossilOrigin-Name: 35a20a5f22245c70faa51965951e8cc011defa93

10 years agoFix the e_walauto.test script so that it works on windows.
drh [Tue, 16 Dec 2014 12:46:38 +0000 (12:46 +0000)] 
Fix the e_walauto.test script so that it works on windows.

FossilOrigin-Name: 7d092ebb6724c3c0fdc05dc94ca767d158933fb5

10 years agoEnhanced "stress2" testing in the threadtest3.c test program.
drh [Tue, 16 Dec 2014 00:20:07 +0000 (00:20 +0000)] 
Enhanced "stress2" testing in the threadtest3.c test program.

FossilOrigin-Name: ae43539e62e76676a3daf561b629a1b9b4e2d2c9

10 years agoMake sure the sqlite3BtreeCount() routine does not leave index cursors in an
drh [Tue, 16 Dec 2014 00:08:31 +0000 (00:08 +0000)] 
Make sure the sqlite3BtreeCount() routine does not leave index cursors in an
inconsistent state, as doing so might result in an assertion fault inside
of sqlite3BtreeKey() called from saveAllCursors() if content is deleted out
from under the statement that issued the sqlite3BtreeCount() call.

FossilOrigin-Name: 5b1b697040116048e464b3ebab8395fe088e389a

10 years agoChanges to threadtest3 so that "stress2" is more similar to the SDS stress test. threadtest3
dan [Mon, 15 Dec 2014 20:49:26 +0000 (20:49 +0000)] 
Changes to threadtest3 so that "stress2" is more similar to the SDS stress test.

FossilOrigin-Name: 5648af96d8e2521c5b0cca19f1358374d032394d

10 years agoAdd new test file e_walauto.test.
dan [Mon, 15 Dec 2014 16:27:12 +0000 (16:27 +0000)] 
Add new test file e_walauto.test.

FossilOrigin-Name: 62ef45140cdbff5eeb8bef506db8b78ced3ace94

10 years agoFix errors in threadtest3 tests caused by earlier tests neglecting to close database...
dan [Mon, 15 Dec 2014 08:46:17 +0000 (08:46 +0000)] 
Fix errors in threadtest3 tests caused by earlier tests neglecting to close database handles.

FossilOrigin-Name: 1d44f1b1a9fefeb2449892775c59765c46784eb1

10 years agoFurther enhancements to threadtest3 stress tests.
dan [Sat, 13 Dec 2014 17:41:48 +0000 (17:41 +0000)] 
Further enhancements to threadtest3 stress tests.

FossilOrigin-Name: ba772cff602ca7c3c0c91451e701f52a872e7a14

10 years agoAdd extra tests to threadtest4.c. Fix a benign data race accessing the
drh [Fri, 12 Dec 2014 23:17:54 +0000 (23:17 +0000)] 
Add extra tests to threadtest4.c.  Fix a benign data race accessing the
text encoding using ENC(db).

FossilOrigin-Name: d7bb7ea4ab97ad26f4c84c9b8dc2827010093803

10 years agoAdd extra tests to threadtest3.
dan [Fri, 12 Dec 2014 16:39:38 +0000 (16:39 +0000)] 
Add extra tests to threadtest3.

FossilOrigin-Name: f6bf86f907cbff31bed3cbfc922c10c973575498

10 years agoAdd new tests to the threadtest4.c program. Fix a long-standing data race
drh [Fri, 12 Dec 2014 01:27:17 +0000 (01:27 +0000)] 
Add new tests to the threadtest4.c program.  Fix a long-standing data race
in WAL mode for shared-cache.

FossilOrigin-Name: d8d3e6d04cbb9e3033ad8613e3dbd4ad0b01765a

10 years agoRemove the KeyInfo cache (for now - perhaps we will add it back in later - or
drh [Fri, 12 Dec 2014 00:52:10 +0000 (00:52 +0000)] 
Remove the KeyInfo cache (for now - perhaps we will add it back in later - or
maybe not since it provides negligible benefit but adds a lot of complexity
and thread-safety risk).  Add a mutex to ATTACH to deal with a data race.

FossilOrigin-Name: 03c443eaf24413d6faaa91a33575d9dfd3528b5c

10 years agoMake sure the Btree mutex is held when setting the locking mode and the threadtest4
drh [Fri, 12 Dec 2014 00:40:58 +0000 (00:40 +0000)] 
Make sure the Btree mutex is held when setting the locking mode and the
secure delete flag when attaching a shared-cache database.

FossilOrigin-Name: 6bef7ede2bbf0a51729e1943b0b0c895cb57c718

10 years agoMerge the cell overflow page number cache thread race fix from trunk.
drh [Fri, 12 Dec 2014 00:26:59 +0000 (00:26 +0000)] 
Merge the cell overflow page number cache thread race fix from trunk.

FossilOrigin-Name: cefad47ec2ad58d7ecd58bab9a261e4d5816cd69

10 years agoFix a bug in the threadtest4.c program. Remove the keyinfo cache as it provides
drh [Fri, 12 Dec 2014 00:20:37 +0000 (00:20 +0000)] 
Fix a bug in the threadtest4.c program.  Remove the keyinfo cache as it provides
minimal performance improvements, and then only at SQL preparation time, not
at runtime, and it has problems with data races in shared-cache mode.  We might
later add the keyinfo cache back but only enable it when shared-cache mode
is off.

FossilOrigin-Name: b7489f9451628c68f1dfc1d457fc161a0921c631

10 years agoAdd the threadtest4.c test program. Not yet working.
drh [Thu, 11 Dec 2014 19:29:42 +0000 (19:29 +0000)] 
Add the threadtest4.c test program.  Not yet working.

FossilOrigin-Name: ec3a74469ca2f0f3fb7d82a05fdac7500354e78f

10 years agoFix a race condition to do with very large index keys in shared-cache mode.
dan [Thu, 11 Dec 2014 16:38:18 +0000 (16:38 +0000)] 
Fix a race condition to do with very large index keys in shared-cache mode.

FossilOrigin-Name: fc157dd7f18c94b7ae5f155e1b4a5d7714b7da8c

10 years agoFix a typo in the documentation for sqlite3_threadsafe().
drh [Thu, 11 Dec 2014 15:27:04 +0000 (15:27 +0000)] 
Fix a typo in the documentation for sqlite3_threadsafe().

FossilOrigin-Name: 258e747bb7e3a2bc46f932cc2b06c2689d43aeb0

10 years agoFix a typo causing a test error in e_walhook.test.
dan [Wed, 10 Dec 2014 20:57:20 +0000 (20:57 +0000)] 
Fix a typo causing a test error in e_walhook.test.

FossilOrigin-Name: d9f916ba09f1a61684b4d59548ab6cf71cdb6a37

10 years agoAdd new test file e_walhook.test.
dan [Wed, 10 Dec 2014 20:29:49 +0000 (20:29 +0000)] 
Add new test file e_walhook.test.

FossilOrigin-Name: 2eb6d3e4fbe388ef28e4b7b846e9e8a4361517a4

10 years agoRevise mutex handling by the sqlite3_win32_reset_heap() function.
mistachkin [Wed, 10 Dec 2014 17:34:48 +0000 (17:34 +0000)] 
Revise mutex handling by the sqlite3_win32_reset_heap() function.

FossilOrigin-Name: eacb3b7baa910e84f984b8e45695a2a2f5a4c861

10 years agoFix typos in the documentation for sqlite3_table_column_metadata().
drh [Wed, 10 Dec 2014 04:58:43 +0000 (04:58 +0000)] 
Fix typos in the documentation for sqlite3_table_column_metadata().
No changes to code.

FossilOrigin-Name: 3528f8dd39acace8eeb7337994c8617313f4b04b

10 years agoFix the sqlite3_table_column_metadata() routine so that it gives the correct
drh [Tue, 9 Dec 2014 22:24:42 +0000 (22:24 +0000)] 
Fix the sqlite3_table_column_metadata() routine so that it gives the correct
answer for the "rowid" column in a WITHOUT ROWID table.  Enhance it so that
it can be used to check for the existence of a table by setting the column
name parameter to NULL.  The routine is now included in the build by
default, even without the SQLITE_ENABLE_COLUMN_METADATA compile-time option.

FossilOrigin-Name: cf9be419a16156a9814e1378bb49b780de977343

10 years agoAdd extra tests to e_walckpt.test.
dan [Tue, 9 Dec 2014 20:13:40 +0000 (20:13 +0000)] 
Add extra tests to e_walckpt.test.

FossilOrigin-Name: 84f9581019961efa31297f8be48427b17bcca857

10 years agoLower the default SQLITE_SORTER_PMASZ value back to 10, where it has been for
drh [Tue, 9 Dec 2014 19:16:41 +0000 (19:16 +0000)] 
Lower the default SQLITE_SORTER_PMASZ value back to 10, where it has been for
the past couple of releases.  Applications that need a larger value can set
one.

FossilOrigin-Name: 1ba8911c18f2fe34c20dc42f25a8f3c1c798fa7a

10 years agoMake the sqlite3_table_column_metadata() interface available by default and
drh [Tue, 9 Dec 2014 19:07:29 +0000 (19:07 +0000)] 
Make the sqlite3_table_column_metadata() interface available by default and
without requiring the SQLITE_ENABLE_COLUMN_METADATA compile-time option.
Other sqlite3_column_* interfaces that have a run-time penalty even if they
are unused still require the SQLITE_ENABLE_COLUMN_METADATA option at
compile-time.

FossilOrigin-Name: 4f7549ff924b8ed8f90fc447cd4be11421453984

10 years agoAdd the SQLITE_REVERSE_UNORDERED_SELECTS compile-time option that causes the
drh [Tue, 9 Dec 2014 15:12:11 +0000 (15:12 +0000)] 
Add the SQLITE_REVERSE_UNORDERED_SELECTS compile-time option that causes the
"PRAGMA reverse_unordered_selects" setting to be on by default.

FossilOrigin-Name: 75a803e694d2c4e67579f45d54a0aaf120411a6e

10 years agoIncrease the default minimum PMA size for multi-threaded sorting from 10x
drh [Tue, 9 Dec 2014 14:42:49 +0000 (14:42 +0000)] 
Increase the default minimum PMA size for multi-threaded sorting from 10x
the page size to 250x the page size.  Provide the SQLITE_SORTER_PMASZ
compile-time option to change this default.

FossilOrigin-Name: b05340fe3cd5f1676a55023228dc8d1a92de5936

10 years agoFix harmless compiler warning.
mistachkin [Tue, 9 Dec 2014 04:26:56 +0000 (04:26 +0000)] 
Fix harmless compiler warning.

FossilOrigin-Name: e97b7a8b4df784d148fefb9554da0f511e351d9f

10 years agoAdd extra tests to e_walckpt.test.
dan [Mon, 8 Dec 2014 20:29:23 +0000 (20:29 +0000)] 
Add extra tests to e_walckpt.test.

FossilOrigin-Name: d6832aa24c8d93b4532a651b86605bd0a0d0aa78

10 years agoAdd missing mutex calls around a call to sqlite3SchemaGet() within sqlite3_open().
dan [Mon, 8 Dec 2014 20:20:16 +0000 (20:20 +0000)] 
Add missing mutex calls around a call to sqlite3SchemaGet() within sqlite3_open().

FossilOrigin-Name: 45415899545767888d36dcc0bafaf0ef415d94c2

10 years agoAdd a missing mutex around calls to clear the KeyInfo cache when closing
drh [Mon, 8 Dec 2014 18:08:45 +0000 (18:08 +0000)] 
Add a missing mutex around calls to clear the KeyInfo cache when closing
a database connection.

FossilOrigin-Name: 7047ce32a234484b8ba15311e6560aa74ff692c9

10 years agoAvoid accessing a single uninitialized byte when moving a rare 3-byte cell from an...
dan [Sat, 6 Dec 2014 14:56:49 +0000 (14:56 +0000)] 
Avoid accessing a single uninitialized byte when moving a rare 3-byte cell from an internal page to a leaf. This was not actually causing a problem, just a valgrind warning.

FossilOrigin-Name: 6aeece19a235344be2537e66a3fe08b1febfb5a0

10 years agoFix a (harmless) uninitialized variable reference in b-tree balancing for
drh [Sat, 6 Dec 2014 02:05:44 +0000 (02:05 +0000)] 
Fix a (harmless) uninitialized variable reference in b-tree balancing for
auto-vacuumed tables with overflow pages.

FossilOrigin-Name: dd1dd4451f468599f7a0c2f7b5ee6125db3bb152

10 years agoAvoid a potential NULL pointer deference in the sqlite3_stmt_scanstatus()
drh [Fri, 5 Dec 2014 21:18:19 +0000 (21:18 +0000)] 
Avoid a potential NULL pointer deference in the sqlite3_stmt_scanstatus()
logic.

FossilOrigin-Name: 42d44adc13d52b8dd571c9375eb48298123d5a60

10 years agoFix a buffer overread that might occur in analyze.c if SQLITE_ENABLE_STAT4 was defined.
dan [Fri, 5 Dec 2014 21:04:26 +0000 (21:04 +0000)] 
Fix a buffer overread that might occur in analyze.c if SQLITE_ENABLE_STAT4 was defined.

FossilOrigin-Name: c1ae1268b9023a771fda98f26bf451c6066fe70b

10 years agoAdd new test file e_walckpt.test. Still some tests to come.
dan [Fri, 5 Dec 2014 20:46:19 +0000 (20:46 +0000)] 
Add new test file e_walckpt.test. Still some tests to come.

FossilOrigin-Name: e4db3db3a65ecfd4069a40d436aa7a5512d61a30

10 years agoMake sure the WhereTerm objects are fully zeroed when they are allocated.
drh [Fri, 5 Dec 2014 19:50:58 +0000 (19:50 +0000)] 
Make sure the WhereTerm objects are fully zeroed when they are allocated.

FossilOrigin-Name: fdb667335c2250239a66143aec4235325dec8274

10 years agoThe KeyInfo cache must be cleared before closing the btree, not after.
drh [Fri, 5 Dec 2014 15:31:33 +0000 (15:31 +0000)] 
The KeyInfo cache must be cleared before closing the btree, not after.
Revised fix for ticket [e4a18565a36884b00edf].

FossilOrigin-Name: 7ed3346e8c10dbf52fd44ab69900699d4f7ad3fd

10 years agoWhen closing a (shared-cache) database connection, be sure to clear out
drh [Fri, 5 Dec 2014 14:44:57 +0000 (14:44 +0000)] 
When closing a (shared-cache) database connection, be sure to clear out
all KeyInfo objects cached on Index objects.
Fix for ticket [e4a18565a36884b00edf].

FossilOrigin-Name: adca7688de20ff40d8ddf2107dfaf92af3873b83

10 years agoImproved comment on the sharedB.test test script. fix-stale-keyinfo-cache
drh [Fri, 5 Dec 2014 14:34:30 +0000 (14:34 +0000)] 
Improved comment on the sharedB.test test script.

FossilOrigin-Name: 71f589e3f82a07513425e212072f32748c0732d4

10 years agoTest case demonstrating the problem described by
drh [Fri, 5 Dec 2014 14:07:53 +0000 (14:07 +0000)] 
Test case demonstrating the problem described by
ticket [e4a18565a36884b00edf].

FossilOrigin-Name: ffea3e905adc108d2dc37f5d6da2024f0389f176

10 years agoWhen closing a (shared-cache) database connection, be sure to clear out all
drh [Fri, 5 Dec 2014 05:38:02 +0000 (05:38 +0000)] 
When closing a (shared-cache) database connection, be sure to clear out all
KeyInfo objects cached on Index objects.
Proposed fix for ticket [e4a18565a36884b00edf].

FossilOrigin-Name: 651ed97de13234be60a1138a98b06d308449a791

10 years agoFix compiler warnings.
drh [Fri, 5 Dec 2014 00:32:09 +0000 (00:32 +0000)] 
Fix compiler warnings.

FossilOrigin-Name: e9955c0e14d13ba1411f013acb4979958dae2516

10 years agoFix the autoconf and MSVC makefiles, which have been broken for nearly a
drh [Fri, 5 Dec 2014 00:17:39 +0000 (00:17 +0000)] 
Fix the autoconf and MSVC makefiles, which have been broken for nearly a
month.  :-(

FossilOrigin-Name: 520c2b838da8b230487c8c66f3ba8e5daa1ca886

10 years agoMake sure that a DISTINCT query with an ORDER BY works correctly even if
drh [Thu, 4 Dec 2014 21:54:58 +0000 (21:54 +0000)] 
Make sure that a DISTINCT query with an ORDER BY works correctly even if
it uses a descending index.  Fix for ticket [c5ea805691bfc4204b1cb9e].

FossilOrigin-Name: 0d3aef97ebddf422b8bdcbc5878970c6129e3f54

10 years agoPerformance enhancement for single-table queries with many OR-connected
drh [Thu, 4 Dec 2014 20:24:50 +0000 (20:24 +0000)] 
Performance enhancement for single-table queries with many OR-connected
WHERE clause terms and multiple indexes with the same left-most columns.

FossilOrigin-Name: 1461d543ac8a3e4a54405067893146c74576bb4e

10 years agoIf a table is the right operand of a LEFT JOIN, then any column of that
drh [Thu, 4 Dec 2014 16:27:17 +0000 (16:27 +0000)] 
If a table is the right operand of a LEFT JOIN, then any column of that
table can be NULL even if that column as a NOT NULL constraint.
Fix for ticket [6f2222d550f5b0ee7ed].

FossilOrigin-Name: 6f6fcbe4736b9468a495c684d5eebc8bfe5c566a

10 years agoClarification of the meaning of the second parameter to the busy-handler
drh [Thu, 4 Dec 2014 15:02:03 +0000 (15:02 +0000)] 
Clarification of the meaning of the second parameter to the busy-handler
callback.  No changes to code.

FossilOrigin-Name: 1e2bc484f8e7766a493bfeab04d82e50f37217b8

10 years agoFix comment typos reported on the mailing list. No changes to code.
drh [Thu, 4 Dec 2014 14:01:39 +0000 (14:01 +0000)] 
Fix comment typos reported on the mailing list.  No changes to code.

FossilOrigin-Name: 93a71c9f058b58d11187293a1e8d5324d0911880

10 years agoAdd an implementation mark and fix a comment describing the OP_Checkpoint
drh [Thu, 4 Dec 2014 04:50:59 +0000 (04:50 +0000)] 
Add an implementation mark and fix a comment describing the OP_Checkpoint
opcode.

FossilOrigin-Name: 7475b90c558157802b036162376fceacc1b9ab4a

10 years agoAdd evidence marks and assert()s used as evidence for checkpoint requirements.
drh [Wed, 3 Dec 2014 19:25:41 +0000 (19:25 +0000)] 
Add evidence marks and assert()s used as evidence for checkpoint requirements.

FossilOrigin-Name: b2da8afc7657266fbe8e683c6e50fe18216cbcf3

10 years agoFix over-length comment lines in sqlite.h.in. No changes to code.
drh [Wed, 3 Dec 2014 19:08:00 +0000 (19:08 +0000)] 
Fix over-length comment lines in sqlite.h.in.  No changes to code.

FossilOrigin-Name: cbd357fd8c25c9c6043063710a3e2a89ff8b4575

10 years agoSimplify the sqlite3_wal_checkpoint() documentation. Add some source code
drh [Wed, 3 Dec 2014 18:32:47 +0000 (18:32 +0000)] 
Simplify the sqlite3_wal_checkpoint() documentation.  Add some source code
evidence marks.

FossilOrigin-Name: 026c44ff2c092b14faa19985dd46873aeb8727dc

10 years agoFuther tweaks to the sqlite3_wal_checkpoint_v2() documentation.
drh [Wed, 3 Dec 2014 16:30:27 +0000 (16:30 +0000)] 
Futher tweaks to the sqlite3_wal_checkpoint_v2() documentation.

FossilOrigin-Name: 7d284d047b0677fb4532df5aae06f5bad997f5e9

10 years agoUpdates to the documentation for sqlite3_wal_checkpoint_v2() and related
drh [Wed, 3 Dec 2014 15:50:09 +0000 (15:50 +0000)] 
Updates to the documentation for sqlite3_wal_checkpoint_v2() and related
interfaces, including adding many requirements marks.

FossilOrigin-Name: 1e212d9899387344fd62c7b6fbcc59ea885b6d7c

10 years agoAdd support for SQLITE_CHECKPOINT_TRUNCATE.
drh [Tue, 2 Dec 2014 20:51:52 +0000 (20:51 +0000)] 
Add support for SQLITE_CHECKPOINT_TRUNCATE.

FossilOrigin-Name: edda2b9e7a15ed486de81b10dd9bacd39c571d3f

10 years agoWhen attempting to restart a wal file, make any required calls to sqlite3_randomness... checkpoint-truncate
dan [Tue, 2 Dec 2014 19:35:09 +0000 (19:35 +0000)] 
When attempting to restart a wal file, make any required calls to sqlite3_randomness() before waiting on or checking for wal file readers. This restores the behaviour exhibited by the trunk.

FossilOrigin-Name: 6ee08769f0ffbb3d620c66b89180ece7782dc820

10 years agoAdd the SQLITE_CHECKPOINT_TRUNCATE option.
dan [Tue, 2 Dec 2014 19:04:54 +0000 (19:04 +0000)] 
Add the SQLITE_CHECKPOINT_TRUNCATE option.

FossilOrigin-Name: 8e20a43419e46b6b9d1f60ec7ea420bbfb3ef358

10 years agoConvert two unreachable branches into assert() statements.
drh [Tue, 2 Dec 2014 16:16:47 +0000 (16:16 +0000)] 
Convert two unreachable branches into assert() statements.

FossilOrigin-Name: 61b31e771430f490fc2c4cef55046debc4a5f4f5

10 years agoWork around overzealous NULL pointer checking in memcpy() and memset() for
drh [Tue, 2 Dec 2014 13:46:53 +0000 (13:46 +0000)] 
Work around overzealous NULL pointer checking in memcpy() and memset() for
some systems.

FossilOrigin-Name: 0d04f380e1bd17104b3cf76b64d0cfc79a726606

10 years agoRemove the ill-designed "-end" option from the command-line shell. Instead,
drh [Fri, 28 Nov 2014 13:35:03 +0000 (13:35 +0000)] 
Remove the ill-designed "-end" option from the command-line shell.  Instead,
allow multiple SQL or dot-commands as command-line arguments.  Any -cmd
commands are processed first, followed by other command-line arguments, for
backwards compatibility.

FossilOrigin-Name: 24fa2e9832daaa5d68ee28a00c56c55f97a4da9e

10 years agoAdd the -end option to the command-line shell, which forces it to exit after
drh [Fri, 28 Nov 2014 11:54:44 +0000 (11:54 +0000)] 
Add the -end option to the command-line shell, which forces it to exit after
reading prior command-line options (presumably including one or more -cmd
options) and without reading standard input.

FossilOrigin-Name: b59397b1f1e32c478b5fa96659cd4300177d39f7

10 years agoFix a buffer overread during compilation of CREATE VIRTUAL TABLE statements that...
dan [Thu, 27 Nov 2014 11:36:36 +0000 (11:36 +0000)] 
Fix a buffer overread during compilation of CREATE VIRTUAL TABLE statements that featured an explicit database name but no virtual table arguments. For example, "CREATE VIRTUAL TABLE main.ft USING fts4".

FossilOrigin-Name: f095cde579e7417306e11b5c1d2dd90b6bb547d5

10 years agoMore test cases for the balancer.
drh [Thu, 27 Nov 2014 04:23:19 +0000 (04:23 +0000)] 
More test cases for the balancer.

FossilOrigin-Name: 358ea818f7ea5aa55bafaf4057e9fc7a5fd77c11

10 years agoFix a problem in the new b-tree balancer that was causing corruption of
drh [Thu, 27 Nov 2014 03:46:04 +0000 (03:46 +0000)] 
Fix a problem in the new b-tree balancer that was causing corruption of
the fragmentation count.

FossilOrigin-Name: f242394e079dd185aad90f2aee902a5edf27e150

10 years agoFix an integer overflow bug in vdbesort.c.
dan [Tue, 25 Nov 2014 18:59:55 +0000 (18:59 +0000)] 
Fix an integer overflow bug in vdbesort.c.

FossilOrigin-Name: 623827192532f08b68bc0eb9ed1449e173361f0c

10 years agoAlways reinitialized the Index.bUnordered and Index.noSkipscan flags before
drh [Sat, 22 Nov 2014 21:37:00 +0000 (21:37 +0000)] 
Always reinitialized the Index.bUnordered and Index.noSkipscan flags before
rereading the sqlite_stat1 table, even if SQLITE_ENABLE_STAT4 is defined.

FossilOrigin-Name: 1e1221fc4823a6bb6fc5d2408732e27aca585de9

10 years agoFix an error in the comments from the previous check-in.
drh [Sat, 22 Nov 2014 19:52:10 +0000 (19:52 +0000)] 
Fix an error in the comments from the previous check-in.

FossilOrigin-Name: 9660ce541837ccd8df415641a922274e093056aa

10 years agoDeploy heuristics (well-commented) to better estimate how much unindexed terms
drh [Sat, 22 Nov 2014 18:50:44 +0000 (18:50 +0000)] 
Deploy heuristics (well-commented) to better estimate how much unindexed terms
in the WHERE clause filter the number of output rows from a single table.

FossilOrigin-Name: 221659945c3f78d3b6789bfe8fdeb8d3ee1fa038

10 years agoRemove a redundant test case (probably a copy/paste error). Add an assert()
drh [Sat, 22 Nov 2014 12:22:13 +0000 (12:22 +0000)] 
Remove a redundant test case (probably a copy/paste error).  Add an assert()
to where.c to ensure that automatic indexes do not have there output row
counts adjusted downward by supplementary constraints.

FossilOrigin-Name: eea47933493c85a85247ad383bd148b06f627d04

10 years agoFix a typo in a requirements mark on the abs() SQL function.
drh [Thu, 20 Nov 2014 23:21:23 +0000 (23:21 +0000)] 
Fix a typo in a requirements mark on the abs() SQL function.

FossilOrigin-Name: b1e6c02f8b9a2afaa12ac15a33e3f698c3be27d6

10 years agoFix a benign test error on PRAGMA collation_list
drh [Thu, 20 Nov 2014 23:11:30 +0000 (23:11 +0000)] 
Fix a benign test error on PRAGMA collation_list
introduced by a recent checkin.

FossilOrigin-Name: 332cc9591d05508ac9cb56fde2b82e20e0342d1f

10 years agoUpdates to requirements tags on the mutex documentation.
drh [Thu, 20 Nov 2014 23:03:42 +0000 (23:03 +0000)] 
Updates to requirements tags on the mutex documentation.

FossilOrigin-Name: fcf8b7e4c6c3893e2004a28dc9f0f677907b4ba9

10 years agoAdd requirements marks on the built-in collating functions.
drh [Thu, 20 Nov 2014 19:22:26 +0000 (19:22 +0000)] 
Add requirements marks on the built-in collating functions.

FossilOrigin-Name: 4b608b62ac8d4eafdb76192b3b5db272332a4bfd

10 years agoEnsure that when the number of cells on a page drops to zero that the freelist
drh [Thu, 20 Nov 2014 15:30:50 +0000 (15:30 +0000)] 
Ensure that when the number of cells on a page drops to zero that the freelist
and fragment counter are both cleared.  Also add evidence marks corresponding
to file-format documentation.

FossilOrigin-Name: ef9fbc08b0a047042deeb2d6007d67028fefb9e2

10 years agoFix the encoding of some integers to use the minimum amount of space:
drh [Thu, 20 Nov 2014 02:58:10 +0000 (02:58 +0000)] 
Fix the encoding of some integers to use the minimum amount of space:
-128, -32768, -8388608, -217483648, and -140737488355328.

FossilOrigin-Name: 2d7c8da5f16e64eaa7b0c2d66898682ea3d102a0

10 years agoAdd some requirements marks to the record formatting logic. Comment changes
drh [Thu, 20 Nov 2014 02:18:14 +0000 (02:18 +0000)] 
Add some requirements marks to the record formatting logic.  Comment changes
only - the code is unaltered.

FossilOrigin-Name: 9a9627e178a67bbfc85366aaea900e674d22fb53

10 years agoAdd new requirements marks associated with the file format documentation.
drh [Wed, 19 Nov 2014 16:36:25 +0000 (16:36 +0000)] 
Add new requirements marks associated with the file format documentation.
No changes to code.

FossilOrigin-Name: 6d00bcca6ed1903fb17275752cab71c14392355b

10 years agoCompletely remove an assert() that had previously been commented out.
drh [Wed, 19 Nov 2014 14:31:12 +0000 (14:31 +0000)] 
Completely remove an assert() that had previously been commented out.

FossilOrigin-Name: 89b3c1c4555c98c633089b21cdd2a1a3a1e751eb

10 years agoAdd an ALWAYS on an always-true branch in wal.c.
drh [Wed, 19 Nov 2014 14:05:41 +0000 (14:05 +0000)] 
Add an ALWAYS on an always-true branch in wal.c.
Fix the ANALYZE command so that it resets the "unordered" and "noskipscan"
flags on indices when reloading the sqlite_stat1 table.

FossilOrigin-Name: 9ed97a85feee6593faefa2b54cc4cf9a60f515f9

10 years agoAdding the "noskipscan" token to an sqlite_stat1.stat field prevents
drh [Tue, 18 Nov 2014 21:54:31 +0000 (21:54 +0000)] 
Adding the "noskipscan" token to an sqlite_stat1.stat field prevents
an index for being used with the skip-scan algorithm.

FossilOrigin-Name: 4461bf045d8eecf98478035efcdba3f41c709bc5

10 years agoAllow an automatic index to be used if the only uses of declared indexes for
drh [Tue, 18 Nov 2014 21:45:35 +0000 (21:45 +0000)] 
Allow an automatic index to be used if the only uses of declared indexes for
the same loop use the skip-scan algorithm.

FossilOrigin-Name: c52f7971e90cac1058d6b66c9e334cbc8607def3

10 years agoMerge in all the other ROLLBACK fixes from the branch-3.8.7 branch.
drh [Tue, 18 Nov 2014 20:49:30 +0000 (20:49 +0000)] 
Merge in all the other ROLLBACK fixes from the branch-3.8.7 branch.
I don't know why I was doing them one-by-one.

FossilOrigin-Name: 296b0c7397790ceadbdb330959e962f6491abc3e

10 years agoFix a bug in the sqlite3TripAllCursors() routine that prevents it from
drh [Tue, 18 Nov 2014 20:22:05 +0000 (20:22 +0000)] 
Fix a bug in the sqlite3TripAllCursors() routine that prevents it from
reporting errors.  It is unknown at this time whether or not this omission can
result in any incorrect result in an actual query.

FossilOrigin-Name: 2896f2640ab3e102ee248d20fb68c497817524eb

10 years agoUpdate a couple of test cases to account for the fact that ROLLBACK does not always...
drh [Tue, 18 Nov 2014 20:16:27 +0000 (20:16 +0000)] 
Update a couple of test cases to account for the fact that ROLLBACK does not always abort all running SELECT statements.

FossilOrigin-Name: abccda769a3f6b755c3bf70b5fb31a5e16718ef3

10 years agoIncrement the version number to 3.8.7.2
drh [Tue, 18 Nov 2014 12:28:52 +0000 (12:28 +0000)] 
Increment the version number to 3.8.7.2

FossilOrigin-Name: 945a9e687fdfee5f7103d85d131024e85d594ac3

10 years agoAdd an ALWAYS() to an always-true conditional in the WAL rollback logic.
drh [Tue, 18 Nov 2014 02:44:32 +0000 (02:44 +0000)] 
Add an ALWAYS() to an always-true conditional in the WAL rollback logic.

FossilOrigin-Name: c5eae8a60d474131fbfa4d0c2b459005267e8be4

10 years agoRemove code from sqlite3BtreeKeySize() made unreachable by the previous
drh [Mon, 17 Nov 2014 20:33:07 +0000 (20:33 +0000)] 
Remove code from sqlite3BtreeKeySize() made unreachable by the previous
check-in.

FossilOrigin-Name: 57c4aa988c8eda3cc513c1e5df5804d88bee99a0

10 years agoAvoid calling sqlite3BtreeKeysize() on a b-tree cursor in SKIPNEXT or SKIPPREV state.
dan [Mon, 17 Nov 2014 19:44:44 +0000 (19:44 +0000)] 
Avoid calling sqlite3BtreeKeysize() on a b-tree cursor in SKIPNEXT or SKIPPREV state.

FossilOrigin-Name: 2f2ecb994889acb783616acb7307f8fed962d213

10 years agoAvoid calling sqlite3BtreeKeysize() on a b-tree cursor in SKIPNEXT or SKIPPREV state.
dan [Mon, 17 Nov 2014 19:42:48 +0000 (19:42 +0000)] 
Avoid calling sqlite3BtreeKeysize() on a b-tree cursor in SKIPNEXT or SKIPPREV state.

FossilOrigin-Name: 54e7d3fcb1ab21c03ffef1af93ae029a2901098a

10 years agoImproved comments on the BtCursor.skipNext field. No changes to code.
drh [Mon, 17 Nov 2014 19:25:15 +0000 (19:25 +0000)] 
Improved comments on the BtCursor.skipNext field.  No changes to code.

FossilOrigin-Name: e956e7db057d1112badf5e0671cea95201385b44

10 years agoWhen a SELECT statement is terminated by a ROLLBACK TO operation, make the
drh [Mon, 17 Nov 2014 17:13:06 +0000 (17:13 +0000)] 
When a SELECT statement is terminated by a ROLLBACK TO operation, make the
error message be "abort due to ROLLBACK" rather than
"callback requested query abort".

FossilOrigin-Name: 34fc4a082c192830e48f643549c04a4f91912b8b

10 years agoFix a bug in the sqlite3TripAllCursors() routine that prevents it from
drh [Mon, 17 Nov 2014 15:32:47 +0000 (15:32 +0000)] 
Fix a bug in the sqlite3TripAllCursors() routine that prevents it from
reporting errors.  It is unknown at this time whether or not this omission can
result in any incorrect result in an actual query.

FossilOrigin-Name: 42588207ff5451cb785c394633e1ab631fb82f01