drh
eb091cdfc4
Updates to requirements marks. No changes to code.
...
FossilOrigin-Name: 8a0366285b94dc43d932736e7b1eedb71e241857
2013-11-09 19:47:15 +00:00
drh
d2fe3358cf
Throw an error if AUTOINCREMENT appears in a WITHOUT ROWID table.
...
Updates to API documentation to discuss WITHOUT ROWID.
FossilOrigin-Name: b1abb2b078d1cb9ec5fbd7f98221914b93632e9f
2013-11-09 18:15:35 +00:00
drh
511717c645
Fix harmless compiler warnings.
...
FossilOrigin-Name: 0077c0772a884b54d81fa3733aac6f0c364ef1a8
2013-11-08 17:13:23 +00:00
drh
95a5bcbb00
Merge the Cygwin directory separator fix. Also fix a C++-ism in the
...
multiplexor code so that it will compile on MSVC.
FossilOrigin-Name: 830629d31d171155d90ff87ae8e70094d17bb2d3
2013-11-08 17:03:50 +00:00
drh
392ee21d1a
Performance improvement: Avoid unnecessary seeks on REPLACE INTO for a
...
WITHOUT ROWID table.
FossilOrigin-Name: fd11afa5f5c853dcac2290444b581a3fe1d4332d
2013-11-08 16:54:56 +00:00
drh
fc8d4f96b4
Performance improvements:
...
Avoid unnecessary seeks when doing a single-row UPDATE on a WITHOUT ROWID
table.
FossilOrigin-Name: 6f187a0fb1b09ebc4732c4afbf3c813f82e069f1
2013-11-08 15:19:46 +00:00
drh
81897bb14e
Merge change to drop the mutex on the multiplexor before entering the xRead
...
VFS call, in order to enhance parallelizability.
FossilOrigin-Name: 3c566e41e4c9c66960cc5a3ddee8556835237999
2013-11-08 12:14:50 +00:00
drh
ce60aa469a
Optimize out a NotExists/NotFound opcode that occurs in UPDATE processing
...
after constraint checks if there is no possiblity that the constraint checking
code might have moved the cursor.
FossilOrigin-Name: 74e3ee2ee6ea89af2c12dd0bce248467fd0f1310
2013-11-08 01:09:15 +00:00
drh
24f1985a25
On the --summary output of wordcount, add the a PRAGMA integrity_check and
...
a 64-bit checksum of the entire table.
FossilOrigin-Name: 1d1d13b89056903543c909b094030d205473fa82
2013-11-08 00:16:58 +00:00
drh
ac873261c4
Add many new options to the wordcount test program: --delete, --pagesize,
...
--cachesize, --commit, --nosync, and --journal.
FossilOrigin-Name: e938112d316ca31460f247cc104ca3ff1d60b4da
2013-11-07 23:23:27 +00:00
mistachkin
14eca4ef5d
Fix temporary directory separator handling for Cygwin.
...
FossilOrigin-Name: 9d870d5f0d8f02e5c91396a1f98b5ddb56b40b70
2013-11-07 22:11:55 +00:00
drh
00f91cf52f
Fix a compiler warning introduced by the previous check-in.
...
FossilOrigin-Name: 404bd98fb41f71d041932d68a908570995825ec1
2013-11-07 21:32:16 +00:00
drh
702ba9f2e3
Enable the WHERE_ONEPASS_DESIRED optimization for UPDATE operations on
...
WITHOUT ROWID tables.
FossilOrigin-Name: 215307985590c2f3f7aa0d5a0b7799155a506045
2013-11-07 21:25:13 +00:00
drh
0afa99e3e7
Add the --stats and --summary options to the wordcount.c test program.
...
FossilOrigin-Name: 8aa21e6791d408c8f018bd779e09cb7e7179f884
2013-11-07 19:43:21 +00:00
drh
699e3ad1b9
Increase the version number to 3.8.2.
...
FossilOrigin-Name: 9ad5b74c26c5a18068a2418a2092a05c226912c2
2013-11-07 18:40:39 +00:00
drh
9ac3c1ea40
Add the "wordcount.c" test program.
...
FossilOrigin-Name: f02ee5463084cef45ae412c51211b66de7e86baf
2013-11-07 18:37:31 +00:00
drh
b0e503409d
Add support for WITHOUT ROWID tables. This change also includes
...
(1) standardization of the error message returned from run-time constraint
errors, (2) improved EXPLAIN comments, (3) the SQLITE_ENABLE_EXPLAIN_COMMENTS
option, (4) the SQLITE_ENABLE_MODULE_COMMENTS option, and (5) a bug fix
(see [573cc27427]) in the handling of REPLACE on the rowid when secondary
indices use FAIL or IGNORE.
FossilOrigin-Name: c80e229dd9c1230abefbc707d4bf0b24315c6bb5
2013-11-07 16:08:10 +00:00
drh
41e13e1268
Make sure cached KeyInfo objects are only valid for a single database
...
connection. Clear all cached KeyInfo objects on any collating sequence
change.
FossilOrigin-Name: 55eea1782aead6a6aaf93f14d85486f8fd2209ad
2013-11-07 14:09:39 +00:00
drh
2ec2fb2269
Reference count the KeyInfo object. Cache a copy of an appropriate KeyInfo
...
for each index in the Index object, and reuse that one copy as much as possible.
FossilOrigin-Name: defd5205a7cc3543cdd18f906f568e943b8b3a2c
2013-11-06 19:59:23 +00:00
dan
93889d9335
Have the OP_NoConflict opcode set the VdbeCursor.seekResult variable. This speeds up subsequent OP_Insert and OP_IdxInsert opcodes.
...
FossilOrigin-Name: 474555002d45f8741faceea599c057eef4e7931e
2013-11-06 16:28:59 +00:00
dan
5c663c3002
Use ansi escape codes to use different colored text for opcode names in the output of [explain_i]: Red for opcodes that insert or delete b-tree elements, blue for opcodes that move cursors and green for the ResultRow opcode.
...
FossilOrigin-Name: 4be2b64b3e5237ee1fb156c06cffaf7d96f6c532
2013-11-06 14:52:40 +00:00
drh
b41392241e
Allocate extra stack space for UnpackedRecord objects, reducing the need
...
to malloc for them as often, and thereby get a performance improvement.
FossilOrigin-Name: a725a75f870d7d9b21946fbcc71a956492986ab0
2013-11-06 14:36:08 +00:00
drh
d9b7ec9348
Minor optimization to the OP_Halt opcode.
...
FossilOrigin-Name: d70c78814ba565a44628eab61a3a0a5dba56269a
2013-11-06 14:05:21 +00:00
drh
416846a362
Improved ORDER BY optimization for WITHOUT ROWID tables.
...
FossilOrigin-Name: 8f1709ff2d52d5ceca3da6a2a4e06da204d9e65a
2013-11-06 12:56:04 +00:00
drh
d4ddae985b
Disable the OR optimization for WITHOUT ROWID tables, since it relies on
...
the use of rowids.
FossilOrigin-Name: 6055dad2ba2f9256b1f2d0a9e32ca00f1b81b0cf
2013-11-06 12:05:57 +00:00
drh
79b9831cdd
Remove an incorrect test case from conflict2.test.
...
FossilOrigin-Name: 427612efc169c8ebe94a8b586d7abd0fcd43d0d0
2013-11-06 11:46:48 +00:00
drh
4ad8b90244
Remove an unused variable.
...
FossilOrigin-Name: e9c1e419b7227d86f2e1882cebf360116cdf1a13
2013-11-06 02:36:04 +00:00
drh
1282609b02
Make sure the query planner knows that the PRIMARY KEY index of a
...
WITHOUT ROWID table is always a covering index.
FossilOrigin-Name: 03e7019e14255dbeb85bb299569c82ef48ac4a98
2013-11-05 22:39:17 +00:00
drh
8d1b82e40b
Fix conflict handling for the case when the rowid uses REPLACE but other
...
unique constraints use FAIL or IGNORE.
FossilOrigin-Name: 573cc27427af297185f11aac8dce88ca31f471ca
2013-11-05 19:41:32 +00:00
drh
5a9a37b7b4
Fix a bug in secondary index initialization when the secondary index is
...
a superset of the PRIMARY KEY for a WITHOUT ROWID table.
FossilOrigin-Name: 52a3d885192c5d31f956c5ee17e29e2d1f3d5c9f
2013-11-05 17:30:04 +00:00
dan
6d8578bc8f
Remove an "explain" command from test script without_rowid1.test that was accidentally committed.
...
FossilOrigin-Name: 4b41d989e894b9214a9b973228ef8446356f9fbb
2013-11-05 16:56:11 +00:00
dan
427ebba10c
Unless the destination table is completely empty, disable the xfer optimization for WITHOUT ROWID tables.
...
FossilOrigin-Name: 3877c9f50582b51817dcf3cd75d836891a34e590
2013-11-05 16:39:31 +00:00
dan
7b3d1860af
Updates to the backcompat.test test script so that it works with really old (3.6.*) versions.
...
FossilOrigin-Name: ace7e7b64261aeabc9525d5d0cfebe0275c9ddf5
2013-11-05 15:02:39 +00:00
dan
e83267da54
Add tests for updates of without-rowid tables that use non-BINARY collation sequences for the primary key columns. And a minor bugfix to the same.
...
FossilOrigin-Name: 99b1fa4b1664a79eae1dddce2b9a848384cdb1d7
2013-11-05 14:19:22 +00:00
drh
f9c8ce3ced
Standardize the error messages generated by constraint failures to a format
...
of "$TYPE constraint failed: $DETAIL". This involves many changes to the
expected output of test cases.
FossilOrigin-Name: 54b221929744b1bcdbcc2030fef2e510618afd41
2013-11-05 13:33:55 +00:00
drh
00012df46d
Add the conflict2.test script. Fix issues discovered by this script.
...
FossilOrigin-Name: 294ed33756b06375e56c41f1088d42ee48adbdc8
2013-11-05 01:59:07 +00:00
drh
d269461c91
Add the index7.test script for testing partial indices with WITHOUT ROWID
...
tables. Fix bugs in ANALYZE located by that script.
FossilOrigin-Name: 79befe3ac1f676272b78423b9aa5dac41435420e
2013-11-04 22:04:17 +00:00
drh
da475b8dbc
Bug fixes in the INSERT constraint checker. Refactor the Rowid handling logic
...
for ANALYZE with STAT3/4.
FossilOrigin-Name: 1ea43c0f236792a3bc13e1cb330f5ff3402c2851
2013-11-04 21:44:54 +00:00
drh
c3e356fe10
Add another test case file for WITHOUT ROWID and fix the bugs that the new
...
test file uncovered.
FossilOrigin-Name: bc2a06eb8e57573d08e77800a7937eee5af3f035
2013-11-04 18:34:46 +00:00
drh
5838340b0e
Fix a problem with processing INTEGER PRIMARY KEY on a WITHOUT ROWID table.
...
FossilOrigin-Name: 89098e6d18dacd1554cf4471b5f035db85d1f327
2013-11-04 17:00:50 +00:00
drh
6546af1480
Correctly handle changing counting when inserting and deleting on
...
WITHOUT ROWID tables. Add more FOREIGN KEY test cases.
FossilOrigin-Name: d072bcd0a8692d590c13c2bf458454c10c12a3e2
2013-11-04 15:23:25 +00:00
drh
90e758ff1f
Correctly handle self-referential foreign keys on WITHOUT ROWID tables.
...
FossilOrigin-Name: af128862ab6008df9dda1ee90f93f9efd629e259
2013-11-04 13:56:00 +00:00
dan
d6dd5def4d
Fix a bug preventing FTS from correctly processing bracket tokens that are immediately preceded by characters that are neither whitespace or token characters.
...
FossilOrigin-Name: 49be646cd981f8ff0434cf90d2748afa30260017
2013-11-04 08:56:22 +00:00
drh
bd50a926ef
Improved comments on foreign key logic.
...
FossilOrigin-Name: 1315d9109c7105f4a62bb2d43ca6948d41245129
2013-11-03 02:27:58 +00:00
drh
2552d43f4c
Improved Synopsis on register comparison operators. Fix a bug on the
...
constraint check generator.
FossilOrigin-Name: a7a18b65fa34dfdf6117fa21db3e576f96876617
2013-11-02 22:29:34 +00:00
drh
63f0eedf10
Many new test cases added, that mostly work. Currently 18 errors in
...
without_rowid3.test. Also there is a hack marked by a /*FIXME*/ comment
on at fkey.c:547 that needs fixing.
FossilOrigin-Name: 39e32187b66405e00dbd44685f6cdd269c90f5e5
2013-11-02 22:09:48 +00:00
drh
ce95d11921
Change the "idx" name of the primary key index for WITHOUT ROWID tables in
...
sqlite_statN statistics tables to be the name of the table rather than the
fabricated index name (ex: sqlite_autoindex_xyz_1). This makes it consistent
with sqlite_master table.
FossilOrigin-Name: 4ee4d3106308508a58b80e54e0afb4afb42f510b
2013-11-02 19:34:38 +00:00
drh
ebe25af168
Update the ANALYZE logic so that it works with WITHOUT ROWID tables.
...
FossilOrigin-Name: 9075770e4030b35677fbbe291f3c3c4946937a9a
2013-11-02 18:46:04 +00:00
drh
c6bd4e4a36
Store the root page of the PRIMARY KEY index for a WITHOUT ROWID table in
...
the sqlite_master entry for the main table and omit the sqlite_master entry
for the PRIMARY KEY.
FossilOrigin-Name: b7544bb280f1c1c55135a9b35aeb85604fef94a3
2013-11-02 14:37:18 +00:00
drh
71b4ea83e0
Import the sqlite3_analyzer fixes from trunk.
...
FossilOrigin-Name: ac711459ff243e787ea5e9c01720dff75a5eda9b
2013-11-02 11:43:05 +00:00