/ Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

2013-11-07
16:08
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. check-in: c80e229dd9 user: drh tags: trunk
14:09
Make sure cached KeyInfo objects are only valid for a single database connection. Clear all cached KeyInfo objects on any collating sequence change. Closed-Leaf check-in: 55eea1782a user: drh tags: omit-rowid
2013-11-06
19:59
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. check-in: defd5205a7 user: drh tags: omit-rowid
16:28
Have the OP_NoConflict opcode set the VdbeCursor.seekResult variable. This speeds up subsequent OP_Insert and OP_IdxInsert opcodes. check-in: 474555002d user: dan tags: omit-rowid
14:52
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. check-in: 4be2b64b3e user: dan tags: omit-rowid
14:36
Allocate extra stack space for UnpackedRecord objects, reducing the need to malloc for them as often, and thereby get a performance improvement. check-in: a725a75f87 user: drh tags: omit-rowid
14:05
Minor optimization to the OP_Halt opcode. check-in: d70c78814b user: drh tags: omit-rowid
12:56
Improved ORDER BY optimization for WITHOUT ROWID tables. check-in: 8f1709ff2d user: drh tags: omit-rowid
12:05
Disable the OR optimization for WITHOUT ROWID tables, since it relies on the use of rowids. check-in: 6055dad2ba user: drh tags: omit-rowid
11:46
Remove an incorrect test case from conflict2.test. check-in: 427612efc1 user: drh tags: omit-rowid
02:36
Remove an unused variable. check-in: e9c1e419b7 user: drh tags: omit-rowid
2013-11-05
22:39
Make sure the query planner knows that the PRIMARY KEY index of a WITHOUT ROWID table is always a covering index. check-in: 03e7019e14 user: drh tags: omit-rowid
19:41
Fix conflict handling for the case when the rowid uses REPLACE but other unique constraints use FAIL or IGNORE. check-in: 573cc27427 user: drh tags: omit-rowid
17:30
Fix a bug in secondary index initialization when the secondary index is a superset of the PRIMARY KEY for a WITHOUT ROWID table. check-in: 52a3d88519 user: drh tags: omit-rowid
16:56
Remove an "explain" command from test script without_rowid1.test that was accidentally committed. check-in: 4b41d989e8 user: dan tags: omit-rowid
16:39
Unless the destination table is completely empty, disable the xfer optimization for WITHOUT ROWID tables. check-in: 3877c9f505 user: dan tags: omit-rowid
15:02
Updates to the backcompat.test test script so that it works with really old (3.6.*) versions. check-in: ace7e7b642 user: dan tags: omit-rowid
14:19
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. check-in: 99b1fa4b16 user: dan tags: omit-rowid
13:33
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. check-in: 54b2219297 user: drh tags: omit-rowid
01:59
Add the conflict2.test script. Fix issues discovered by this script. check-in: 294ed33756 user: drh tags: omit-rowid
2013-11-04
22:04
Add the index7.test script for testing partial indices with WITHOUT ROWID tables. Fix bugs in ANALYZE located by that script. check-in: 79befe3ac1 user: drh tags: omit-rowid
21:44
Bug fixes in the INSERT constraint checker. Refactor the Rowid handling logic for ANALYZE with STAT3/4. check-in: 1ea43c0f23 user: drh tags: omit-rowid
18:34
Add another test case file for WITHOUT ROWID and fix the bugs that the new test file uncovered. check-in: bc2a06eb8e user: drh tags: omit-rowid
17:00
Fix a problem with processing INTEGER PRIMARY KEY on a WITHOUT ROWID table. check-in: 89098e6d18 user: drh tags: omit-rowid
15:23
Correctly handle changing counting when inserting and deleting on WITHOUT ROWID tables. Add more FOREIGN KEY test cases. check-in: d072bcd0a8 user: drh tags: omit-rowid
13:56
Correctly handle self-referential foreign keys on WITHOUT ROWID tables. check-in: af128862ab user: drh tags: omit-rowid
2013-11-03
02:27
Improved comments on foreign key logic. check-in: 1315d9109c user: drh tags: omit-rowid
2013-11-02
22:29
Improved Synopsis on register comparison operators. Fix a bug on the constraint check generator. check-in: a7a18b65fa user: drh tags: omit-rowid
22:09
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. check-in: 39e32187b6 user: drh tags: omit-rowid
19:34
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. check-in: 4ee4d31063 user: drh tags: omit-rowid
18:46
Update the ANALYZE logic so that it works with WITHOUT ROWID tables. check-in: 9075770e40 user: drh tags: omit-rowid
14:37
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. check-in: b7544bb280 user: drh tags: omit-rowid
11:43
Import the sqlite3_analyzer fixes from trunk. check-in: ac711459ff user: drh tags: omit-rowid
11:34
A pair of sqlite3_analyzer bug fixes: (1) quote strings in the SQL at the end of the output. (2) Fix test_stat.c so that it no longer misses some overflow pages on internal index pages. check-in: 42a11e7464 user: drh tags: trunk
2013-11-01
22:02
Size KeyInfo objects so that IdxInserts always compare the correct number of fields. check-in: 302a81390f user: drh tags: omit-rowid
20:30
Fix sqlite3_analyzer so that it works with WITHOUT ROWID tables. Fix index generation for secondary indices that include fields from the PRIMARY KEY. check-in: f9769d701c user: drh tags: omit-rowid
18:14
Additional UPDATE test cases for WITHOUT ROWID. check-in: 65384ae0f0 user: drh tags: omit-rowid
17:59
Fix an invalid cast operation in the WITHOUT ROWID parsing logic. check-in: 845153be36 user: drh tags: omit-rowid
17:21
Merge all changes from trunk, and disable a pair of corruption tests that are no longer valid since sqlite_master.rootpage can now be NULL for tables. check-in: dd5d57b9a1 user: drh tags: omit-rowid
17:08
Change the interface to sqlite3GenerateConstraintChecks() for improved lucidity and to fix issues in dealing with UPDATEs for WITHOUT ROWID tables. Make sure iDataCur and iIdxCur are initialized when processing DELETEs of a VIEW. UPDATE processing distinguishes between changes to ROWID and PRIMARY KEY. check-in: c525ac5630 user: drh tags: omit-rowid
14:03
Improved VDBE comments on the constraint checker. Fix a missing write lock in the UPDATE logic. check-in: 3bed599e74 user: drh tags: omit-rowid
12:42
Some UPDATE statements now working in WITHOUT ROWID tables. check-in: 5c0eaea6a2 user: drh tags: omit-rowid
01:45
A couple of bug fixes. check-in: cdf00248cf user: drh tags: omit-rowid
2013-10-31
20:34
Fix the Synopsis on OP_Concat. Added test_addop_breakpoint() during SQLITE_DEBUG. Enhanced sqlite3VdbeChangeToNoop() to omit the instruction if it is the most recent added. Continue to fix problems with UPDATE and WITHOUT ROWID. check-in: 9b6d9e106a user: drh tags: omit-rowid
18:49
Fix a problem in os_unix.c causing compilation failure if SQLITE_DEBUG and SQLITE_MAX_MMAP_SIZE=0 are both defined. check-in: 090db8c81d user: dan tags: trunk
17:38
Fix issues with quering from an auxiliary index that must refer back to the PRIMARY KEY index of a WITHOUT ROWID table. check-in: cff1f55c52 user: drh tags: omit-rowid
15:37
Improved comments and variable names in infrastructure routines of UPDATE, DELETE, and INSERT. check-in: ad90e762e5 user: drh tags: omit-rowid
12:13
Moving UPDATE towards the iDataCur/iIdxCur representation. Still not working for WITHOUT ROWID, though. check-in: deacbd21b5 user: drh tags: omit-rowid
11:15
Refactor the INSERT, DELETE, and UPDATE code generators to distinguish between the "data cursor" and the "first index cursor", which are no longer consecutive in the case of a WITHOUT ROWID table. check-in: 1adfca6019 user: drh tags: omit-rowid
2013-10-30
20:22
Continue working to get UPDATE operational for WITHOUT ROWID tables. Fix PRAGMA integrity_check so that it works on WITHOUT ROWID tables. check-in: 0d4fea7462 user: drh tags: omit-rowid