Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
History of src/update.c
2019-10-31
| ||
20:54 | Correctly generate pre-UPDATE content for virtual columns that are used by foreign key constraints. Ticket [b9befa4b83a660cc] file: [07a50767] check-in: [40d3282e] user: drh branch: trunk, size: 40273 | |
2019-10-23
| ||
15:47 | Minor adjustments for clarity and test coverage. file: [ae657f0d] check-in: [30065716] user: drh branch: generated-columns, size: 40310 | |
2019-10-22
| ||
13:59 | In UPDATE processing, include generated columns in the set of columns being updated if and only if their generator expressions reference some other column that is being updated. file: [3a5e1fa8] check-in: [d38176e9] user: drh branch: generated-columns, size: 40310 | |
13:01 | New testcase() macros. Fix a problem with INSERT when the IPK is to the right of generated columns. file: [287146d2] check-in: [412799fc] user: drh branch: generated-columns, size: 39210 | |
2019-10-19
| ||
18:47 | Work toward getting generated columns to work with triggers. Still more work to do in this area. file: [e5c43209] check-in: [932a3727] user: drh branch: generated-columns, size: 38930 | |
2019-10-18
| ||
17:47 | Merge trunk enhancements into the generated-columns branch. file: [ca754bbc] check-in: [85bc4524] user: drh branch: generated-columns, size: 38892 | |
12:52 | Claw back some performance from the sqlite3ExprGetColumnOfTable() routine. file: [c9020ecd] check-in: [e8426acb] user: drh branch: generated-columns, size: 38891 | |
2019-10-17
| ||
17:54 | Some (but not all) INSERT and UPDATE statements now work for STORED columns. file: [a66b56e5] check-in: [fe7517bf] user: drh branch: generated-columns, size: 38911 | |
15:59 | Basic UPDATE functionality working for VIRTUAL columns. file: [ef3e261b] check-in: [c21959d4] user: drh branch: generated-columns, size: 38520 | |
2019-10-16
| ||
17:46 | Enhancements to SQL query normalization for UPDATE statements. file: [1487ee46] check-in: [bba975c7] user: mistachkin branch: trunk, size: 37920 | |
12:18 | Initial experimental code for generated column support. Non-functional. file: [1ad2eb40] check-in: [11d472c1] user: drh branch: generated-columns, size: 37979 | |
2019-09-16
| ||
12:17 | Merge recent trunk enhancements into the begin-concurrent-pnu branch. file: [4a554849] check-in: [54930b7e] user: drh branch: begin-concurrent-pnu, size: 38343 | |
2019-08-31
| ||
20:26 | Mark new VDBE branches never taken. file: [7f05fad5] check-in: [83c2adff] user: drh branch: trunk, size: 37919 | |
17:14 | If a DELETE trigger fired by an UPDATE OR REPLACE statement deletes the row being updated, do not attempt to proceed with the original UPDATE operation. Fix for [d6a0fbc1]. file: [ce478c8a] check-in: [4145b3e0] user: dan branch: trunk, size: 37886 | |
2019-05-14
| ||
21:51 | Merge the latest trunk enhancements into begin-concurrent-pnu. file: [e5790323] check-in: [e70878b3] user: drh branch: begin-concurrent-pnu, size: 38279 | |
2019-05-08
| ||
19:06 | Avoid an excess register allocation in UPDATE, when possible. This improves speed (slightly) and reduces the code footprint. file: [3cb9150d] check-in: [8658574e] user: drh branch: trunk, size: 37855 | |
2019-05-07
| ||
19:13 | On an INSERT or UPDATE, generate the new table record prior to running foreign key checks, in case the foreign key checks changes datatypes on the registers holding column values. Proposed fix for ticket [e63cbcfd3378afe6980d626]. file: [fb29c2eb] check-in: [3f1c8051] user: drh branch: tkt-e63cbcfd, size: 37289 | |
2019-03-08
| ||
15:30 | Merge all the latest enhancements from trunk. file: [eafa026e] check-in: [667cce3d] user: drh branch: begin-concurrent-pnu, size: 37637 | |
2019-01-22
| ||
13:45 | Make sure cursors are opened on all indexes for an UPDATE OR REPLACE regardless of whether or not the indexes are partial or contain columns that might need to be updated. file: [0b973357] check-in: [e148cdad] user: drh branch: trunk, size: 37213 | |
2019-01-02
| ||
19:46 | Merge changes from begin-concurrent-wal2. Also modify the unix-excl shm-locks on this branch so that it is not an error to attempt to release an EXCLUSIVE lock that is not held. file: [ddae32c4] check-in: [86685679] user: dan branch: begin-concurrent-pnu-wal2, size: 37644 | |
2018-12-29
| ||
02:26 | A new implementation of sqlite3VdbeMakeLabel() is faster and makes fewer memory allocations by deferring memory allocation until sqlite3VdbeResolveLabel() is called, at which point the code generator has a better idea of how big the relocation table needs to be. The sqlite3VdbeMakeLabel() routine now takes a Parse* parameter instead of Vdbe*. file: [4e630e47] check-in: [4a0929ac] user: drh branch: trunk, size: 37220 | |
2018-11-20
| ||
16:02 | Consolidate the two sqlite3SchemaToIndex() routines. file: [792c3c1c] check-in: [dfab7170] user: dan branch: reuse-schema1, size: 37315 | |
2018-11-19
| ||
20:41 | Fix a problem with virtual tables in shared schemas. file: [6659f40a] check-in: [84be9220] user: dan branch: reuse-schema1, size: 37316 | |
2018-11-17
| ||
18:11 | Fix further problems with the feature on this branch. file: [336eec2a] check-in: [6d7a7e5f] user: dan branch: reuse-schema1, size: 37274 | |
2018-11-16
| ||
17:04 | Fix further REUSE_SCHEMA issues. file: [34d648f4] check-in: [9780829a] user: dan branch: reuse-schema1, size: 37264 | |
2018-11-15
| ||
21:20 | Fix some problems with the feature on this branch. Many problems remain. file: [9e05b1eb] check-in: [31b6aee7] user: dan branch: reuse-schema1, size: 37257 | |
2018-10-01
| ||
11:00 | Ensure that the OP_VColumn opcode does set sqlite3_vtab_nochange() unless the OPFLAG_NOCHNG bit is set in P5. Fix for ticket [69d642332d25aa3b7315a6d385] file: [0c9714a1] check-in: [31ac8dba] user: drh branch: branch-3.25, size: 35178 | |
2018-09-28
| ||
21:11 | Merge latest begin-concurrent changes into this branch. file: [31d5208f] check-in: [6f3dd980] user: dan branch: begin-concurrent-pnu, size: 37629 | |
2018-09-27
| ||
20:20 | Ensure that the OP_VColumn opcode does set sqlite3_vtab_nochange() unless the OPFLAG_NOCHNG bit is set in P5. Fix for ticket [69d642332d25aa3b7315a6d385] file: [1816d56c] check-in: [322ab1fc] user: drh branch: trunk, size: 37205 | |
2018-09-17
| ||
20:47 | Further optimizations to the UPDATE logic to avoid making changes to partial indexes if none of the columns mentioned in the WHERE clause are modified by the UPDATE. file: [682f112c] check-in: [d1365a5b] user: drh branch: trunk, size: 37194 | |
2018-09-16
| ||
18:23 | Remove an unreachable branch from the index-on-expression optimization. file: [52d926be] check-in: [2df2cf4f] user: drh branch: trunk, size: 36067 | |
15:01 | Improved presentation on the new code that prevents unnecessary writes to expressions on indexes during an UPDATE when the expression does not reference any of the columns that are changing. file: [74feccd6] check-in: [c9f04529] user: drh branch: trunk, size: 36047 | |
2018-09-15
| ||
21:38 | Optimization: when doing an UPDATE on a table with indexes on an expression, do not update the expression indexes if they do not refer to any of the columns of the table being updated. file: [deb215e3] check-in: [a71b1016] user: drh branch: trunk, size: 36141 | |
2018-08-04
| ||
15:53 | Further logic simplifications that flow out of the omission of the column cache. file: [345ce35e] check-in: [7d9072b0] user: drh branch: omit-column-cache, size: 35167 | |
2018-08-03
| ||
23:04 | Completely remove the column cache logic, which has been a persistent source of bugs for many years. Due to recent enhancements to the performance of the OP_Column opcode, removing the column cache actually makes speed-check.sh run faster. Removing the column cache also saves about 1,800 bytes of code space. file: [42fe8a03] check-in: [3f5f60cd] user: drh branch: omit-column-cache, size: 35170 | |
2018-07-12
| ||
19:39 | Merge latest begin-concurrent changes with this branch. file: [baabeae5] check-in: [d33527d2] user: dan branch: begin-concurrent-pnu, size: 35908 | |
2018-07-10
| ||
17:10 | Further improvements to bytecode branch testing. Fix cases where the macros said a branch could not be taken when in fact it could be. Alter some window function branch coverage macros to indicate that comparison operands cannot be NULL. file: [7b7c768d] check-in: [76e42b70] user: drh branch: trunk, size: 35484 | |
2018-06-06
| ||
17:12 | Merge the 3.24.0 changes plus a few subsequent enhancements. file: [0710fc44] check-in: [be7004a9] user: drh branch: begin-concurrent-pnu, size: 35918 | |
2018-05-24
| ||
23:51 | When doing a one-pass UPDATE or DELETE on virtual tables, close the cursor prior to running VUpdate. This allows one-pass to work on virtual tables that do not allow concurrent reads and writes. Enhance rtree to take advantage of this new capability. file: [46dc24c6] check-in: [b816023c] user: drh branch: trunk, size: 35494 | |
2018-05-15
| ||
11:55 | Merge latest trunk changes into this branch. file: [b25b06e7] check-in: [72f39efa] user: dan branch: begin-concurrent-pnu, size: 35740 | |
2018-04-26
| ||
18:34 | The previous fix for ticket [d85fffd6ffe856092ed8da] in check-in [0a514e62ad1ebe5c12da8dae] did not completely address the probably in that it only worked for cases where the OP_SCopy that loaded the register was the last instruction in the sequence for the expression, which is not necessarily the case for expressions like CASE...END. This revision prevents the registered that will be recomputed from being cached in the first place. file: [5be2f501] check-in: [9fd0faf5] user: drh branch: trunk, size: 35316 | |
18:01 | Merge latest changes from trunk. Including the "ORDER BY ... LIMIT" optimization. file: [d46f8fb3] check-in: [83a4c9f0] user: dan branch: begin-concurrent-pnu, size: 35734 | |
15:50 | Ensure that new.* values of an UPDATE do not get clobbered after the BEFORE triggers run when unmodified columns of the row being updated are reloaded. Fix for ticket [d85fffd6ffe856092ed8da] file: [75ac1102] check-in: [0a514e62] user: drh branch: trunk, size: 35310 | |
15:04 | Clarification of the behavior of a BEFORE UPDATE trigger when the trigger changes the values of some of the columns used to compute new columns in the UPDATE. file: [2946cf3c] check-in: [7bb23c2a] user: drh branch: trunk, size: 34961 | |
2018-04-24
| ||
19:22 | Update this branch with latest changes from trunk. file: [cedbdad8] check-in: [2d8d13e4] user: dan branch: begin-concurrent-pnu, size: 35172 | |
2018-04-21
| ||
03:06 | Fix UPSERT so that it plays nicely with AUTOINCREMENT. file: [0d532819] check-in: [359725ab] user: drh branch: trunk, size: 34748 | |
2018-04-20
| ||
20:09 | Fix a harmless compiler warning. file: [78c2e91b] check-in: [d2ab24f5] user: drh branch: trunk, size: 34734 | |
19:32 | Avoid opening a statement journal on single-row UPDATEs without triggers or FK constraints. file: [9db686e6] check-in: [2772404b] user: drh branch: trunk, size: 34799 | |
16:27 | Minor simplification of the previous checkin. file: [ae56e307] check-in: [d1906689] user: drh branch: upsert-opt2, size: 34873 | |
15:56 | Avoid unnecessary cursor seeks during upsert processing. file: [2f460e57] check-in: [7c4b6d54] user: drh branch: upsert-opt2, size: 35012 | |
13:18 | Enhance UPSERT so that the UPDATE uses the same set of cursors as the INSERT. file: [86e65634] check-in: [c37f39d1] user: drh branch: trunk, size: 34018 | |
00:40 | Minor simplification of the cursor allocation logic for update. file: [74ba1a99] check-in: [fdf71be6] user: drh branch: trunk, size: 33888 | |
2018-04-19
| ||
23:52 | Fix the handling of "PRAGMA count_changes=ON" with UPSERT. Also improved the implementation of count_changes in other places, without changing the behavior. file: [cc691c8b] check-in: [c6f71115] user: drh branch: trunk, size: 33898 | |
2018-04-16
| ||
13:00 | Add support for the "excluded.*" names in the UPDATE clause of an upsert. file: [5787acf0] check-in: [0203f34f] user: drh branch: upsert, size: 34041 | |
2018-04-13
| ||
01:15 | Begin adding upsert logic. This is an incremental check-in. file: [f5210fb5] check-in: [80969643] user: drh branch: upsert, size: 33925 | |
2018-04-12
| ||
19:51 | Simple comment clarification. No code or logic changes. file: [a72ab172] check-in: [a26f9c9f] user: drh branch: upsert, size: 33922 | |
2018-04-05
| ||
16:26 | Fix an instance where an uninitialized VM register might be accessed. Fix for [093420fc0]. This problem was found by OSSFuzz. file: [97d4c951] check-in: [a3b02db7] user: dan branch: trunk, size: 33932 | |
2018-03-02
| ||
18:26 | Merge latest changes from begin-concurrent into this branch. file: [503fcd66] check-in: [8ade94ba] user: dan branch: begin-concurrent-pnu, size: 34345 | |
2018-01-23
| ||
01:56 | Enhance the PRAGMA noop_update statement so that the behavior persists across reprepare operations. file: [b1ff6055] check-in: [c25da6de] user: drh branch: noop-update-reprepare, size: 34277 | |
2018-01-12
| ||
23:18 | Improved comments. Slightly tighter implementation, but no big changes. file: [a90a32ff] check-in: [a1b3f285] user: drh branch: sqlite3_value_nochange, size: 33921 | |
21:00 | Add the experimental sqlite3_value_nochange() interface usable by xUpdate methods of virtual tables to see if a column has actually changed values. file: [7736ffc6] check-in: [8b7be15e] user: drh branch: sqlite3_value_nochange, size: 33715 | |
00:30 | Enable the one-pass optimization for DELETE and UPDATE on RTree. This is parked in a branch because is seems to make no measureable performance difference. file: [82f99065] check-in: [8b8314cb] user: drh branch: rtree-one-pass, size: 33763 | |
2018-01-11
| ||
17:04 | Add the sqlite3_vtab_nochange() method which virtual table implementations can use to optimize UPDATEs. file: [8bd52c38] check-in: [d444b1ff] user: drh branch: sqlite3_vtab_nochange, size: 33657 | |
13:43 | Fix typo in comment. No code changes. file: [f75a8bf4] check-in: [2c55571b] user: drh branch: trunk, size: 33651 | |
2017-12-12
| ||
18:17 | Merge latest begin-concurrent changes into this branch. file: [afb46178] check-in: [3fde0b4d] user: dan branch: begin-concurrent-pnu, size: 34196 | |
2017-11-14
| ||
23:48 | In the parse tree, combine LIMIT and OFFSET into a single expression rooted on a TK_LIMIT node, for a small code size reduction and performance increase, and a reduction in code complexity. file: [961bd126] check-in: [3925facd] user: drh branch: trunk, size: 33642 | |
18:26 | Fix the SQLITE_ENABLE_UPDATE_DELETE_LIMIT functionality so that it works with views and WITHOUT ROWID tables. This is a modified cherrypick of [dae4a97a]. file: [262a470e] check-in: [b2679d3b] user: dan branch: branch-3.8.9, size: 29302 | |
2017-11-10
| ||
20:13 | Omit some extra code from non-SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds. file: [2e7ef383] check-in: [72be33f9] user: dan branch: update-delete-limit-fix, size: 33772 | |
2017-11-09
| ||
19:53 | Add SQLITE_ENABLE_UPDATE_DELETE_LIMIT for views and WITHOUT ROWID tables. file: [5123fcb4] check-in: [584b88aa] user: dan branch: update-delete-limit-fix, size: 33601 | |
2017-11-01
| ||
18:48 | The "PRAGMA noop_update" command now requires SQLITE_ENABLE_NOOP_UPDATE and no longer requires SQLITE_DEBUG. file: [d36ee12b] check-in: [81baf67c] user: drh branch: begin-concurrent-pnu, size: 33552 | |
2017-09-12
| ||
18:49 | Add the highly-experimental "PRAGMA noop_update=TRUE" command. file: [2bb1d048] check-in: [de2e3717] user: drh branch: pragma-noop-update, size: 33539 | |
2017-08-10
| ||
15:19 | Experimental changes that allow a WITHOUT ROWID virtual table to be writable as long as it has only a single-column PRIMARY KEY. file: [5404be9e] check-in: [ab9ee4c1] user: drh branch: writable-vtab-without-rowid, size: 33128 | |
2017-04-11
| ||
19:58 | Avoid updating unaffected indexes on a table as part of an UPDATE that requires foreign key processing in some cases. file: [c443935c] check-in: [477bea9e] user: dan branch: fkey-optimization, size: 32756 | |
2017-02-18
| ||
20:05 | Add an optimization to OP_Column to speed up sequential OP_Column instructions that read earlier fields from the same cursor. Attempt to reorder OP_Column opcodes so as to take advantage of this. file: [bcfda1d1] check-in: [c1adf959] user: dan branch: sort-column-opcodes, size: 32803 | |
2017-01-28
| ||
19:45 | Avoid redundant table b-tree cursor seeks in UPDATE statements that use the two-pass strategy. file: [456d4a46] check-in: [dc555b10] user: dan branch: trunk, size: 32750 | |
2017-01-16
| ||
16:43 | Back out check-in [0b3174e0b1364c] and replace it with a better fix for ticket [91e2e8ba6ff2e2] - a fix that does not cause the problem identified by ticket [7ffd1ca1d2ad4ec]. file: [b356b29d] check-in: [06136652] user: drh branch: automatic-index-affinity, size: 32747 | |
2017-01-12
| ||
16:21 | Fix harmless compiler warnings in the UPDATE code generator. file: [4e21634d] check-in: [385db266] user: drh branch: trunk, size: 32753 | |
2017-01-11
| ||
20:10 | Fix a problem causing the pre-update hook to be passed an incorrect rowid value in some single-pass multi-row updates. file: [715bbfe2] check-in: [62257eb5] user: dan branch: onepass-update, size: 32753 | |
19:03 | Fix a problem with single-pass multi-row UPDATE statements that invoke REPLACE conflict handling. file: [4ed0fccc] check-in: [0a2b8e1b] user: dan branch: onepass-update, size: 32621 | |
15:42 | Fix a problem preventing UPDATE statements that use a range-scan on the PK index of a WITHOUT ROWID table from using a one-pass strategy. file: [117bb080] check-in: [cab86c90] user: dan branch: onepass-update, size: 32379 | |
2017-01-10
| ||
20:04 | Changes to allow some multi-row UPDATE statements to avoid the two-pass approach. file: [77a02122] check-in: [46db23cc] user: dan branch: onepass-update, size: 32299 | |
2016-12-07
| ||
21:35 | Add the sqlite3VdbeAppendP4() method for adding P4 content to the most recently coded instruction. file: [1da7c462] check-in: [28883e8f] user: drh branch: trunk, size: 30773 | |
2016-11-25
| ||
19:32 | Remove the OP_RowKey opcode. Use OP_RowData in its place. file: [1b832110] check-in: [6ac7b07a] user: drh branch: trunk, size: 30802 | |
2016-11-22
| ||
01:26 | Remove unnecessary OP_Close opcodes for a size reduction and performance increase. file: [68714ed4] check-in: [32be7aae] user: drh branch: trunk, size: 30801 | |
2016-11-10
| ||
14:24 | Add the unpacked key fields to OP_IdxInsert for INSERT and UPDATE statements. file: [bb985477] check-in: [67602e40] user: drh branch: unpacked-IdxInsert, size: 31066 | |
2016-11-09
| ||
00:10 | Enhance the OP_IdxInsert opcode to optionally accept unpacked key material. file: [771335a3] check-in: [89d958ab] user: drh branch: unpacked-IdxInsert, size: 30988 | |
2016-08-18
| ||
14:33 | Rename the Db.zName field to Db.zDbSName to make it more descriptive and to distinguish it from all of the other "zName" variables scattered throughout the code. file: [8179e699] check-in: [92a22f01] user: drh branch: zDbSName, size: 30975 | |
2016-05-06
| ||
20:23 | Simplification to the logic used to decide between OP_Seek and OP_NotExists. Use OP_NotExists for both DELETE and UPDATE. file: [4f05ea8c] check-in: [3a695263] user: drh branch: trunk, size: 30972 | |
2016-03-30
| ||
12:56 | Avoid compiler warnings and excess opcodes when SQLITE_ENABLE_PREUPDATE_HOOK is not used. Fix the EXPLAIN output for P4_TABLE opcodes. file: [3e67ab3c] check-in: [5ab46d76] user: drh branch: sessions, size: 30941 | |
2016-03-16
| ||
01:16 | Merge all recent enhancements from trunk. file: [14c6916d] check-in: [6a7ee04b] user: drh branch: sessions, size: 30796 | |
2016-03-08
| ||
01:32 | Add the ALLBITS macro as a shorthand for "(Bitmask)(-1)". file: [56b3db7e] check-in: [91bd619d] user: drh branch: trunk, size: 30210 | |
2016-02-27
| ||
17:16 | Experimental "PRAGMA onconflict=FAIL" statement to change the default ON CONFLICT algorithm to something other than ABORT. file: [3c911431] check-in: [3a0c347c] user: drh branch: pragma-onconflict, size: 30221 | |
2016-02-13
| ||
14:07 | Merge the changes for the 3.11.0 release candidate from trunk. file: [c0016d27] check-in: [4d7a802e] user: drh branch: sessions, size: 30800 | |
2016-02-10
| ||
16:03 | Omit NOT NULL checks on unchanging columns in an UPDATE. file: [a7eeeaff] check-in: [6a3aaedf] user: drh branch: trunk, size: 30214 | |
2016-02-05
| ||
14:15 | Merge enhancements from trunk. file: [52552d2f] check-in: [a533608c] user: drh branch: sessions, size: 30785 | |
13:38 | Add the slightly faster sqlite3DbMallocRawNN(db,n) routine for the majority cases where db is guaranteed to be not NULL. file: [310ca7ad] check-in: [0a802e96] user: drh branch: oom-handling, size: 30199 | |
2016-02-04
| ||
02:34 | Add and use the sqlite3VdbeZeroRegister() interface for coding the common operation of writing zero into a register. file: [37568d17] check-in: [1c8d3001] user: drh branch: zero-register, size: 30188 | |
2015-12-02
| ||
20:40 | Merge recent enhancements from trunk. file: [d8d675aa] check-in: [d1a1278d] user: drh branch: sessions, size: 30783 | |
2015-11-26
| ||
19:33 | Add the "colUsed" field to the sqlite3_index_info structure passed to virtual table xBestIndex methods. To indicate the subset of the virtual table columns that may be required by the current scan. file: [17332f9f] check-in: [116b2064] user: dan branch: vtab-colused, size: 30197 | |
2015-10-30
| ||
16:50 | Merge all the latest enhancements from trunk. file: [c2fff3b6] check-in: [395a153f] user: drh branch: sessions, size: 30580 | |
2015-10-22
| ||
20:54 | Modifications to pass a flag to internal routine sqlite3BtreeCursor() when a cursor that is used solely for deleting b-tree entries, or for obtaining the components of keys to delete from other b-trees, is opened. file: [40e51cd0] check-in: [cdc92919] user: dan branch: btree-fordelete-flag, size: 29994 | |
2015-10-17
| ||
01:00 | Change the code generator for UPDATE to generate code in an order that might run more efficiently in many cases. file: [04ed5f03] check-in: [c6239bf9] user: drh branch: improved-update, size: 30174 | |
2015-10-15
| ||
19:21 | Enhance the use of the column cache for UPDATE statements, making them more efficient for the case where a column is modified to be an expression of other unmodified columns. file: [aa10336a] check-in: [871e091d] user: drh branch: trunk, size: 29991 | |
2015-10-10
| ||
20:35 | Pull in the latest 3.9.0 tweaks from trunk. file: [19b4edc4] check-in: [ed174ccf] user: drh branch: sessions, size: 30574 | |
14:41 | Compiler warning fixes: Rename some local variables from "j1" to avoid a name collision with the j1() bessel function in the math library. Omit a dummy initializer that gcc 4.6.3 does not like. file: [dc376640] check-in: [9ddef84d] user: drh branch: trunk, size: 29988 | |
2015-09-30
| ||
14:50 | Merge recent enhancements from trunk, and especially the fix for ticket [1b266395d6bc10]. file: [9e102cc3] check-in: [b2face9a] user: drh branch: sessions, size: 30565 | |
2015-09-29
| ||
17:20 | Use symbolic names XN_ROWID and XN_EXPR in place of the (-1) and (-2) magic numbers in Index.aiColumn[]. Add asserts to help verify that Index.aiColumn[] is always used correctly. Fix one place in FK processing where Index.aiColumn[] was not being used correctly. file: [a134027f] check-in: [7d272aa6] user: drh branch: trunk, size: 29979 | |
13:25 | Create the sqlite3IsToplevel(Parse*) interface to check to see if a top-level VDBE is being coded (versus a trigger) and use that interface. file: [d8f0afe1] check-in: [59662cd2] user: drh branch: vtab-onepass, size: 29982 | |
12:32 | Fix compiler warnings. file: [e0169d20] check-in: [d1a07838] user: drh branch: vtab-onepass, size: 29993 | |
10:11 | Add tests for fts3 and onepass update/delete operations. Also fix a problem with onepass updates that do not affect any rows. file: [4fb82a24] check-in: [820c8044] user: dan branch: vtab-onepass, size: 30081 | |
2015-09-28
| ||
20:03 | Also allow UPDATE on virtual tables to use the onepass strategy. file: [779319e1] check-in: [1aa27d70] user: dan branch: vtab-onepass, size: 29956 | |
2015-09-15
| ||
15:55 | Merge the latest trunk enhancements with this branch. file: [04a06489] check-in: [b7469c44] user: dan branch: sessions, size: 29273 | |
2015-09-14
| ||
10:47 | Merge the latest trunk enhancements. file: [ce515721] check-in: [22ce9218] user: drh branch: sessions, size: 29269 | |
2015-09-12
| ||
19:26 | Experimental change to use a single-pass approach for DELETE statements on non-virtual tables that do not fire triggers or require foriegn-key processing. file: [eb7ab3ff] check-in: [eaeb2b80] user: dan branch: onepass-delete, size: 28687 | |
2015-09-03
| ||
14:48 | Merge recent trunk enhancements. file: [352eb0f1] check-in: [6a513c05] user: drh branch: sessions, size: 29113 | |
14:18 | Merge enhancements from trunk. file: [3c5bc957] check-in: [1ab10cbf] user: drh branch: index-expr, size: 28683 | |
13:46 | Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto() to just sqlite3VdbeGoto(). file: [795fba8e] check-in: [847387ec] user: drh branch: trunk, size: 28527 | |
2015-09-02
| ||
18:19 | Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for sqlite3VdbeAddOp2(v,OP_Goto,0,i). file: [bf0db561] check-in: [be78f413] user: drh branch: trunk, size: 28530 | |
2015-09-01
| ||
18:52 | Merge recent enhancements from trunk. file: [b551ee2d] check-in: [cb772366] user: drh branch: sessions, size: 29127 | |
2015-08-25
| ||
19:24 | Merge trunk enhancements. file: [e1bea2b6] check-in: [e8b02902] user: drh branch: index-expr, size: 28697 | |
19:20 | Use the sqlite3IndexColumnAffinity() routine to quickly and correctly find the affinity of an index column. file: [adc8b4b2] check-in: [1ee089a7] user: drh branch: trunk, size: 28541 | |
16:57 | Add code to maintain indexes with expression arguments across DELETE, INSERT, and UPDATE statements. Legacy tests pass, but the new code paths are still largely untested. The query planner currently makes no effort to use expression indexes. file: [798196d7] check-in: [efaabdb7] user: drh branch: index-expr, size: 28696 | |
2015-06-08
| ||
22:59 | Code refactoring to try to shift FROM-clause subquery manifesting until after the query planner runs. Except this does not currently work because the query planner needs an estimated of the number of rows in the manifested table. Work in progress. file: [831a657b] check-in: [cabf2187] user: drh branch: view-optimization, size: 28546 | |
2015-05-22
| ||
23:26 | Merge enhancements from trunk, including the new sqlite3_value_dup() API and the addition of the apSqlParam field in the sqlite3_rtree_query_info object of R-Tree. file: [24dd6a45] check-in: [cdc0ca6f] user: drh branch: sessions, size: 29126 | |
17:29 | The SRT_Table type for the SelectDest object is now just an SRT_EphemTab for which the ephemeral table has already been allocated. file: [487747b3] check-in: [b9727e6b] user: drh branch: trunk, size: 28540 | |
2015-03-20
| ||
20:30 | Where possible insert the set of new keys for each index in sorted order within "INSERT INTO ... SELECT" statements. file: [250cefb9] check-in: [0a7f2051] user: dan branch: insert-select-opt, size: 28674 | |
2014-10-31
| ||
14:53 | Merge recent trunk enhancements, and in particular the improvements to the b-tree balancing logic, into the sessions branch. file: [d207deb7] check-in: [28b044a5] user: drh branch: sessions, size: 29244 | |
2014-10-28
| ||
16:50 | Fix a crash that could occur if the WHERE clause of an UPDATE statement on a view that does not feature a column named "rowid" contains a term such as "rowid=?". file: [3c4ecc28] check-in: [8523670d] user: dan branch: trunk, size: 28658 | |
2014-09-29
| ||
18:47 | Add the OPFLAG_MULTICOLUMN flag to the OP_Column opcode. Rearrange OP_Column instructions to take advantage of the new flag for a small performance increase file: [dcc1733c] check-in: [5e5d6e86] user: drh branch: faster-OP_Column, size: 28693 | |
2014-09-08
| ||
15:04 | Merge support for large files on Android from trunk. file: [b9e5295d] check-in: [c2885c6b] user: drh branch: sessions, size: 29236 | |
2014-09-06
| ||
16:39 | Fix typos in comments. No code changes. file: [729f6f18] check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 28650 | |
2014-08-06
| ||
01:25 | Merge the latest 3.8.6 beta changes from trunk. file: [b0f38fda] check-in: [68a6d5e2] user: drh branch: sessions, size: 29239 | |
2014-08-04
| ||
21:26 | Part of the change in the previous check-in was incorrect and can result in an incorrect UPDATE for WITHOUT ROWID tables. This check-in fixes the problem. file: [ea336ce7] check-in: [ee5f6eae] user: drh branch: IN-operator-improvements, size: 28653 | |
18:50 | Further enhancements to IN-operator processing. file: [510c59a2] check-in: [7fdf26da] user: drh branch: IN-operator-improvements, size: 28619 | |
15:12 | Changed my mind: This opcode name changes mere creates unnecessary diff marks between older and newer versions without significantly improving readability. Was: Rename the IsNull opcode to IfNull and rename the NotNull opcode to IfNotNull. file: [41634404] check-in: [2f724cba] user: drh branch: deadend, size: 28612 | |
2014-05-29
| ||
20:29 | Merge trunk changes into the sessions branch. file: [0f16e1d5] check-in: [9f18e78f] user: drh branch: sessions, size: 29198 | |
2014-05-27
| ||
18:18 | Change the name of the Index.autoIndex field to Index.idxType and provide symbolic names for the various values of that field rather than using magic numbers. file: [01564b3c] check-in: [d16e575d] user: drh branch: trunk, size: 28612 | |
2014-05-19
| ||
15:16 | Changes to help ensure that a multiplication does not overflow when computing the number of bytes needed for a memory allocation, and cause a malfunction. No problems existing problems were discovered. However, these changes should help to ensure that no problems arise in the future. file: [f2ded39e] check-in: [17349a49] user: drh branch: safer-malloc, size: 28610 | |
2014-03-04
| ||
14:34 | Merge the performance enhancements of trunk (and some obscure bug fixes) into the sessions branch. file: [7bb549d6] check-in: [7f51ad97] user: drh branch: sessions, size: 29193 | |
2014-02-19
| ||
19:14 | Add the VdbeCoverageNeverTaken() macro, and comments that better describe how the VDBE branch coverage measurement works. Add some tags to provide 100% VDBE branch coverage. file: [5b3e74a0] check-in: [c1e94169] user: drh branch: trunk, size: 28607 | |
2014-02-17
| ||
22:40 | Add logic to do test coverage measurements on the VDBE code. file: [16d6555a] check-in: [ce184c7b] user: drh branch: insert-optimization, size: 28614 | |
14:59 | Avoid unnecessary calls to applyAffinity() during INSERT and UPDATE operations, especially for table that have indices and tables for which all columns have affinity "NONE". file: [b126167e] check-in: [35b4d6e9] user: drh branch: insert-optimization, size: 28326 | |
2014-02-05
| ||
18:15 | Use a new opcode, OP_OpenHash, to indicate that ephemeral tables can be unordered, rather than using the BTREE_UNORDERED bit in the P5 field. file: [3d2bdfe2] check-in: [2997e181] user: drh branch: subquery-codegen-refactor, size: 28341 | |
2014-01-28
| ||
18:06 | Bring in the latest updates from trunk. file: [437c130e] check-in: [7b5f3773] user: drh branch: sessions, size: 28975 | |
2014-01-24
| ||
22:58 | Fixes for various clang warnings. file: [a7df6fff] check-in: [87bf6063] user: drh branch: trunk, size: 28389 | |
2013-12-24
| ||
12:09 | Merge the latest trunk changes into the sessions branch. file: [3143bbdf] check-in: [cfd110bf] user: drh branch: sessions, size: 28907 | |
2013-12-22
| ||
22:45 | Remove a condition that is always in the logic that handles reading default values for columns. file: [c2706a6e] check-in: [895af097] user: drh branch: trunk, size: 28321 | |
2013-12-19
| ||
02:56 | Omit an unnecessary OP_Null opcode from UPDATE. file: [47baf532] check-in: [72d11133] user: drh branch: trunk, size: 28332 | |
2013-12-03
| ||
20:51 | Merge in trunk changes. file: [4ada523d] check-in: [a2914d6b] user: drh branch: sessions, size: 28853 | |
10:14 | Remove an unnecessary branch from the UPDATE logic - one that was also unreachable except following an OOM on x64. file: [d1c2477d] check-in: [72f97277] user: drh branch: trunk, size: 28267 | |
2013-11-26
| ||
18:00 | Merge in performance enhancements from trunk. file: [046d7df2] check-in: [fc9ae839] user: drh branch: sessions, size: 28961 | |
2013-11-19
| ||
02:34 | Avoid seeking on the main data table during the first loop of an UPDATE if an index is sufficient to check the WHERE clause. file: [c05a0ee6] check-in: [57158d9d] user: drh branch: trunk, size: 28375 | |
2013-11-17
| ||
02:42 | Make sure one-pass DELETE for WITHOUT ROWID tables correctly positions the PRIMARY KEY cursor. Make the same fix for UPDATE. file: [cc3d8269] check-in: [6bd5750b] user: drh branch: optimize-delete, size: 28238 | |
2013-11-16
| ||
23:16 | Fix a couple of minor problems with the new delete logic. file: [18e9b11b] check-in: [a11243f8] user: drh branch: optimize-delete, size: 28191 | |
20:13 | Enhance the DELETE logic so that it can make use of WHERE_ONEPASS_DESIRED for rowid tables. file: [6a45368f] check-in: [8f479a72] user: drh branch: optimize-delete, size: 28271 | |
2013-11-11
| ||
22:55 | Merge in the WITHOUT ROWID changes. A few tests are failing now. They will be fixed in a follow-on check-in. file: [faee30d7] check-in: [5addd123] user: drh branch: sessions, size: 29028 | |
16:55 | Remove unreachable code, replacing it in most cases with assert() or NEVER() macros. file: [3de7e657] check-in: [924d63b2] user: drh branch: trunk, size: 28442 | |
2013-11-08
| ||
15:19 | Performance improvements: Avoid unnecessary seeks when doing a single-row UPDATE on a WITHOUT ROWID table. file: [95a640c5] check-in: [6f187a0f] user: drh branch: trunk, size: 28433 | |
01:09 | 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. file: [79f10ddc] check-in: [74e3ee2e] user: drh branch: trunk, size: 28130 | |
2013-11-07
| ||
21:32 | Fix a compiler warning introduced by the previous check-in. file: [0e421a0d] check-in: [404bd98f] user: drh branch: trunk, size: 27955 | |
21:25 | Enable the WHERE_ONEPASS_DESIRED optimization for UPDATE operations on WITHOUT ROWID tables. file: [a1580fb4] check-in: [21530798] user: drh branch: trunk, size: 27953 | |
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. file: [516e0ea0] check-in: [defd5205] user: drh branch: omit-rowid, size: 27364 | |
2013-11-05
| ||
01:59 | Add the conflict2.test script. Fix issues discovered by this script. file: [c60e6169] check-in: [294ed337] user: drh branch: omit-rowid, size: 27499 | |
2013-11-04
| ||
18:34 | Add another test case file for WITHOUT ROWID and fix the bugs that the new test file uncovered. file: [a804e718] check-in: [bc2a06eb] user: drh branch: omit-rowid, size: 27511 | |
2013-11-01
| ||
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. file: [94d63d3e] check-in: [c525ac56] user: drh branch: omit-rowid, size: 27495 | |
14:03 | Improved VDBE comments on the constraint checker. Fix a missing write lock in the UPDATE logic. file: [fff9ac57] check-in: [3bed599e] user: drh branch: omit-rowid, size: 27043 | |
12:42 | Some UPDATE statements now working in WITHOUT ROWID tables. file: [fe12f3cd] check-in: [5c0eaea6] user: drh branch: omit-rowid, size: 26980 | |
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. file: [5afafb53] check-in: [9b6d9e10] user: drh branch: omit-rowid, size: 26979 | |
12:13 | Moving UPDATE towards the iDataCur/iIdxCur representation. Still not working for WITHOUT ROWID, though. file: [3cabfcbd] check-in: [deacbd21] user: drh branch: omit-rowid, size: 26837 | |
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. file: [3be9af55] check-in: [1adfca60] user: drh branch: omit-rowid, size: 26653 | |
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. file: [103ab76c] check-in: [0d4fea74] user: drh branch: omit-rowid, size: 26766 | |
2013-10-25
| ||
19:17 | Progress toward getting UPDATE to work in WITHOUT ROWID tables. file: [e39378bc] check-in: [e557b7d8] user: drh branch: omit-rowid, size: 26503 | |
2013-10-22
| ||
18:01 | The Index object now has nKeyCol and nColumn. nColumn is the total number of columns and nKeyCol is the number of key columns. Currently these always differ by one. Refactor aiColumn[] to be of type i16 instead of int. file: [2bb5a267] check-in: [a106ce86] user: drh branch: omit-rowid, size: 24596 | |
2013-10-10
| ||
20:13 | Synchronize with the trunk. file: [be9831a7] check-in: [136445ba] user: drh branch: sessions, size: 25182 | |
2013-09-05
| ||
18:40 | When preparing an UPDATE statement, avoid generating VDBE code for those foreign key related actions and constraint checks that may be seen to be unnecessary by considering the subset of table columns potentially modified by the UPDATE. file: [f5182157] check-in: [e940b5de] user: dan branch: trunk, size: 24596 | |
2013-08-29
| ||
15:08 | Merge from trunk: (1) Recent bug fixes (2) STAT4 support (3) win32-longpath support. file: [8bacc585] check-in: [e7ebc8f7] user: drh branch: sessions, size: 25128 | |
2013-08-06
| ||
20:01 | When possible, use the multi-column samples in sqlite_stat4 to estimate the number of index rows scanned by a query plan. file: [7d9d38e4] check-in: [2973f5ca] user: dan branch: sqlite_stat4, size: 24542 | |
2013-08-02
| ||
20:44 | Merge in the latest trunk changes, including partial indexes, the MAX_PATH fix in os_win.c, and the sqlite3_cancel_auto_extension() API. file: [e3668141] check-in: [7e1acb39] user: drh branch: sessions, size: 25124 | |
2013-08-01
| ||
01:14 | Add the logic to keep partial indices up to date through DML statements and when new partial indices are created. This new logic is untested except to verify that it does not interfere with full indices. file: [7f3fe64d] check-in: [fb9044d1] user: drh branch: partial-indices, size: 24538 | |
2013-06-26
| ||
13:31 | Bring the sessions branch up-to-date with all the latest trunk changes. file: [19daebf6] check-in: [086a1272] user: drh branch: sessions, size: 25101 | |
2013-06-05
| ||
23:39 | Move the definitions of the WhereLevel and WhereInfo objects out of sqliteInt.h and into where.c. This will facilitate future refactoring of the internal query planner data structures. file: [8e76c3d0] check-in: [1574653b] user: drh branch: nextgen-query-plan-exp, size: 24515 | |
2013-05-08
| ||
18:50 | Merge all recent trunk changes into the sessions branch. file: [2f6de22a] check-in: [ae6c4a09] user: drh branch: sessions, size: 25089 | |
2013-05-06
| ||
13:22 | Make sure the authorizer callback gets a valid pointer to "ROWID" for the column-name parameter when doing an UPDATE that changes the rowid. Fix for ticket [0eb70d77cb05bb2272]. file: [4c0c6864] check-in: [26a59bb8] user: drh branch: trunk, size: 24503 | |
2013-03-28
| ||
01:19 | Merge the changes for the 3.7.16.1 release candidate into the sessions branch. file: [beef58f5] check-in: [ee35a897] user: drh branch: sessions, size: 25028 | |
2013-03-21
| ||
21:20 | Many spelling fixes in comments. No changes to code. file: [a2a5631d] check-in: [6f6e2d50] user: mistachkin branch: trunk, size: 24442 | |
2012-08-25
| ||
01:21 | Merge the latest trunk changes into the sessions branch. file: [abb0fcab] check-in: [aa62d688] user: drh branch: sessions, size: 25029 | |
00:49 | Backport check-in [62678be3df35cd]: When the same index is used for all OR-terms in a WHERE clause, then try to use that index as a covering index. file: [e85ead70] check-in: [865dfcba] user: drh branch: branch-3.7.2, size: 24120 | |
2012-08-24
| ||
18:44 | Fix a problem to do with multi-or queries and automatic indexes. file: [28d2d098] check-in: [a3e26038] user: dan branch: multi-or-covering-index, size: 24443 | |
2012-01-05
| ||
13:02 | Merge all of the latest trunk changes into the sessions branch. file: [89de085a] check-in: [a9bcb432] user: drh branch: sessions, size: 25026 | |
2011-12-09
| ||
16:21 | Make no assumptions about the initial state of VDBE registers. file: [d3076782] check-in: [521d72bd] user: drh branch: uninit-vdbe-mem, size: 24440 | |
2011-10-21
| ||
17:08 | Merge the latest trunk enhancements into the sessions branch. file: [75095192] check-in: [8baef581] user: drh branch: sessions, size: 24844 | |
2011-10-14
| ||
21:49 | Add assert() statements and eliminate needless variable assignments in order to get the clang scan-build utility to report zero problems against the SQLite core. Clang's static analysis did find one real problem - but it was in the command-line shell, not in the SQLite core. file: [25e046a8] check-in: [60fee957] user: drh branch: trunk, size: 24258 | |
2011-07-22
| ||
12:49 | Merge the latest trunk changes into the sessions branch. file: [2d67e24d] check-in: [110cfd69] user: drh branch: sessions, size: 24796 | |
2011-07-02
| ||
13:34 | Cherrypick [45e581bff7] into the 3.7.2 branch. file: [c6be6a5a] check-in: [c593792c] user: dan branch: branch-3.7.2, size: 24117 | |
2011-06-30
| ||
20:17 | Experimental changes to improve optimization of DISTINCT queries. file: [74a6cfb3] check-in: [f7ba0219] user: dan branch: experimental, size: 24210 | |
2011-06-20
| ||
10:44 | Merge the latest trunk changes into the sessions branch. file: [a81bda22] check-in: [4c5e276c] user: drh branch: sessions, size: 24782 | |
2011-06-10
| ||
18:33 | When updating a field that requires foreign key constraints be checked, ensure that the indexes and tables are consistent when the FK logic is run. Otherwise, it may detect the inconsistency and report database corruption. file: [80d77311] check-in: [2b3d9996] user: dan branch: trunk, size: 24196 | |
2011-05-05
| ||
15:46 | Merge the latest trunk changes into the sessions branch. file: [f66b651c] check-in: [6883580e] user: drh branch: sessions, size: 24773 | |
2011-04-25
| ||
18:49 | Add support for on conflict clauses to fts3/fts4. file: [5bcb56e5] check-in: [6d2633a6] user: dan branch: vtab-conflict, size: 24187 | |
2011-03-30
| ||
21:04 | Add the SQLITE_ENABLE_PREUPDATE_HOOK compile-time option. file: [3f3f3bb7] check-in: [66345214] user: drh branch: sessions, size: 24596 | |
2011-03-23
| ||
22:48 | Merge in all the latest changes from the trunk, and especially the interface changes to the SystemCall methods of the VFS. file: [f81e9b32] check-in: [9c3a6e47] user: drh branch: sessions, size: 24598 | |
2011-03-19
| ||
08:38 | Fix a problem with INTEGER PRIMARY KEY columns and the pre-update hook. file: [ca6d4ad2] check-in: [24d4d5dd] user: dan branch: sessions, size: 24591 | |
2011-03-18
| ||
12:35 | Merge all the latest trunk enhancements into the sessions branch. file: [aa39db6c] check-in: [94fd5bb6] user: drh branch: sessions, size: 24599 | |
2011-03-16
| ||
19:59 | Add the sqlite3_preupdate_new() API, for retrieving the new.* values from within a pre-update callback. file: [18a862e3] check-in: [526545c4] user: dan branch: sessions, size: 24692 | |
2011-03-06
| ||
21:28 | Remove dead code identified by the clang static analyzer. file: [81911be1] check-in: [01a79d5a] user: drh branch: trunk, size: 24010 | |
2011-03-05
| ||
13:54 | Fix an instance of signed arithmetic overflow and an one bit-shift overflow. Mark six other signed arithmetic overflow locations that need fixing. file: [c40aedd4] check-in: [04abab71] user: drh branch: trunk, size: 24113 | |
2011-03-01
| ||
18:42 | Add the experimental sqlite3_preupdate_hook() API. file: [1b9a82ed] check-in: [6145d7b8] user: dan branch: sessions, size: 24379 | |
2010-08-30
| ||
22:15 | Provide hints to the btree layer during the creation of transient tables for when it is possible for those tables to use a hash rather than a binary tree. No use is currently made of those hints, though assert() statement verify their accuracy. file: [227e6cd5] check-in: [4fead8e7] user: drh branch: trunk, size: 24103 | |
2010-07-30
| ||
16:54 | Fix typos in comments. No code or logic changes. file: [1521162d] check-in: [15c294ca] user: drh branch: trunk, size: 24060 | |
2010-06-28
| ||
10:15 | Currently, if SQLite cannot find a table or index referred to by a query, it reloads the database schema from disk to see if the table or index has been added since the schema was cached in memory. Extend this behaviour to columns (which may have been added using ALTER TABLE) and fix some obscure cases related to tables and indexes (INDEXED BY, DROP TABLE etc.). file: [19c899c2] check-in: [4932f228] user: dan branch: trunk, size: 24066 | |
2010-05-14
| ||
19:24 | Make sure the value of an INTEGER PRIMARY KEY column supplied to triggers and especially to FK constraints really contains the ROWID and not the NULL that is stored in the column itself. Ticket [dd08e5a988d00dec]. file: [9859f205] check-in: [636f8609] user: drh branch: trunk, size: 24033 | |
2010-02-25
| ||
14:44 | Add some technically unnecessary variable initializations to silence compiler warnings. file: [1d7d70ac] check-in: [a2550597] user: dan branch: branch-3.6.1, size: 23663 | |
2009-12-01
| ||
22:09 | Add testcase() macros to make sure boundary cases in BEFORE UPDATE triggers are well tested. file: [c0dc6b75] check-in: [27175caa] user: drh branch: trunk, size: 24070 | |
2009-11-27
| ||
12:12 | Move [7d30880114] to the trunk. Add optimizations to reduce the number of opcodes used for BEFORE UPDATE triggers. file: [edf5649f] check-in: [1b7c5250] user: dan branch: trunk, size: 23950 | |
2009-11-24
| ||
19:02 | Recomputed unchanged column values in an UPDATE statement after running BEFORE triggers, in case the triggers have modified any of those values. file: [24041f79] check-in: [7d308801] user: drh branch: experimental, size: 22745 | |
2009-11-10
| ||
01:30 | Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [8efeb098] check-in: [f6c045f6] user: drh branch: trunk, size: 22318 | |
2009-10-19
| ||
15:52 | When generating WHERE clause terms internally for NATURAL and USING joins, identify the table by its position in the FROM list, not by its name or alias. Fix for [b73fb0bd64]. file: [8e8535f6] check-in: [6fe63711] user: dan branch: trunk, size: 22376 | |
2009-10-01
| ||
16:09 | If an update does not modify any child or parent key columns, omit foreign key processing for the statement. file: [2c8a6423] check-in: [edff3500] user: dan branch: trunk, size: 22420 | |
2009-09-28
| ||
11:54 | Fix some foreign key constraint related problems that occur when a row refers to itself. file: [a7a5f60b] check-in: [9e503e2d] user: dan branch: trunk, size: 22353 | |
2009-09-24
| ||
09:05 | Remove unused parameter from sqlite3CodeRowTrigger(). Fix header comments for this function and CodeRowTriggerDirect(). file: [5df5c39d] check-in: [0443f7c9] user: dan branch: trunk, size: 22293 | |
2009-09-21
| ||
16:06 | Fix compilation with OMIT_TRIGGER defined. Ticket [1ff6d29030]. file: [4fac66ec] check-in: [fb6ceed3] user: dan branch: trunk, size: 22301 | |
2009-09-19
| ||
17:00 | Check in implementation of foreign key constraints. file: [f720f463] check-in: [d5d39981] user: dan branch: trunk, size: 22168 | |
2009-09-09
| ||
15:06 | Add some tests that involve BEFORE UPDATE or BEFORE DELETE triggers messing with the row being updated or deleted. SQLite behaviour in this scenario is undefined, so the tests just check that the behaviour is relatively sane and there are no crashes. file: [e5f9f75a] check-in: [9a4c59a2] user: dan branch: trunk, size: 21728 | |
2009-09-08
| ||
19:15 | Combine the OP_Statement and OP_Transaction opcodes. file: [7a2c0dad] check-in: [aec9dbd8] user: dan branch: trunk, size: 21346 | |
2009-09-07
| ||
04:38 | Warning cleanup from the MSVC compile. file: [3e97974b] check-in: [26cd015c] user: shane branch: trunk, size: 21319 | |
2009-09-03
| ||
19:43 | Fix a VDBE stack overflow issue with the UPDATE statement. file: [7c8eaf12] check-in: [715cecb8] user: drh branch: branch-3.3.6, size: 16616 | |
2009-08-31
| ||
15:27 | More fixes for test cases. file: [12ffd68c] check-in: [85d9f23b] user: dan branch: trunk, size: 21315 | |
2009-08-30
| ||
11:42 | Fixes for new triggers scheme. file: [574464e0] check-in: [9eb91efd] user: dan branch: trunk, size: 22205 | |
2009-08-28
| ||
18:53 | Changes to support recursive triggers. file: [cddbcabb] check-in: [9b9c1921] user: dan branch: trunk, size: 21177 | |
2009-08-08
| ||
18:01 | Suppress various compiler warnings. (CVS 6963) file: [4da327f7] check-in: [257e9b57] user: drh branch: trunk, size: 24406 | |
2009-07-27
| ||
10:05 | When extracting values from a record to use in an UPDATEd version of that record, apply OP_RealAffinity if required. Fix for #3992. (CVS 6945) file: [245a652c] check-in: [3616766a] user: danielk1977 branch: trunk, size: 24395 | |
2009-07-24
| ||
17:58 | Allow virtual tables to be used in shared-cache mode. (CVS 6928) file: [7570d908] check-in: [5d9e767a] user: danielk1977 branch: trunk, size: 23980 | |
2009-06-27
| ||
11:17 | Fix an instance where sqlite3JumpHere() might be called with a negative address following an OOM fault. (CVS 6828) file: [a1bbe774] check-in: [49f22e55] user: drh branch: trunk, size: 23957 | |
2009-06-23
| ||
20:28 | Enhance autoincrement so that it works with triggers that also do autoincrement inserts, even multiple inserts into the same table. Ticket #3928 (CVS 6807) file: [b58db45e] check-in: [1330993d] user: drh branch: trunk, size: 23986 | |
2009-05-28
| ||
01:00 | Additional refinements to Expr handling. Restore compression of trigger expressions. Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue. Remove an unnecessary ExprDup from CHECK constraint processing. And so forth. (CVS 6682) file: [6ae6c26a] check-in: [4ac2bdfb] user: drh branch: trunk, size: 23729 | |
2009-05-27
| ||
10:31 | Simplifications to the Expr object: Remove Expr.span completely and convert Expr.token into a char* Expr.zToken. Also simplify the Token object by removing the Token.dyn and Token.quoted fields. (CVS 6681) file: [3aec63a3] check-in: [7cb1c3ba] user: drh branch: trunk, size: 23729 | |
2009-05-05
| ||
15:46 | Changes to update.c to facilitate full coverage testing. (CVS 6604) file: [deb93032] check-in: [25a11b9e] user: drh branch: trunk, size: 23738 | |
2009-05-04
| ||
11:42 | Speed up INSERT operations that add data to UNIQUE or PRIMARY KEY indexes by rationalizing duplicate seek operations. (CVS 6599) file: [e69ba30a] check-in: [cac4f3d8] user: danielk1977 branch: trunk, size: 23758 | |
2009-04-24
| ||
15:46 | Get rid of the special RowSet processing in where.c and move that into clients. Added the WHERE_DUPLICATES_OK option to eliminate an unnecessary RowSet during DELETE with a WHERE clause containing ORs. (CVS 6546) file: [5062f0f0] check-in: [98606bee] user: drh branch: trunk, size: 23744 | |
2009-04-22
| ||
17:15 | Eliminate the OP_VRowid opcode. The regular OP_Rowid now work for both regular and virtual tables. (CVS 6537) file: [96172028] check-in: [ecbef450] user: drh branch: trunk, size: 23777 | |
2009-02-28
| ||
10:47 | Instead of linking temporary triggers on non-temporary tables into the Table.pTrigger list, search the temp schema for them on demand. Fix for #3688. (CVS 6329) file: [8ededddc] check-in: [3befe1ef] user: danielk1977 branch: trunk, size: 23811 | |
2009-02-24
| ||
10:14 | Reverse commit (6315) for now. (CVS 6317) file: [87158a23] check-in: [0e7c369c] user: danielk1977 branch: trunk, size: 23798 | |
2009-02-23
| ||
17:33 | Scan an index instead of a table for "SELECT count(*) FROM <tbl>" queries. Because an index is usually smaller than a table on disk, this saves some IO. (CVS 6315) file: [9c11bc0b] check-in: [294ba6f7] user: danielk1977 branch: trunk, size: 23830 | |
2009-02-20
| ||
10:58 | Instead of using SetNumColumns, specify the number of columns in a table or index using the P4 argument. (CVS 6310) file: [fce4fa29] check-in: [e43ed649] user: danielk1977 branch: trunk, size: 23798 | |
2009-02-19
| ||
14:39 | Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305) file: [9edb83cc] check-in: [d9f6ffbc] user: danielk1977 branch: trunk, size: 23892 | |
2008-12-23
| ||
23:56 | Continuing improvements to the multi-index OR-clause optimizer. Added a few simple test cases. (CVS 6062) file: [8c4925f9] check-in: [55d4f493] user: drh branch: trunk, size: 23878 | |
2008-12-10
| ||
22:15 | Fix an issue with the new sqlite3Strlen30() introduced by check-in (6007). Additional casts for compiler warnings. (CVS 6011) file: [080889d2] check-in: [258722b6] user: drh branch: trunk, size: 23875 | |
18:03 | More explicit type casting to silence VC++. (CVS 6006) file: [3e022c24] check-in: [14e6d19c] user: drh branch: trunk, size: 23875 | |
2008-12-04
| ||
20:40 | Replace the VDBE Fifo object with the new RowSet object. (CVS 5977) file: [7143ac31] check-in: [39a0750b] user: drh branch: trunk, size: 23875 | |
2008-11-19
| ||
09:05 | Changes to avoid "unused parameter" compiler warnings. (CVS 5921) file: [37d03659] check-in: [88134322] user: danielk1977 branch: trunk, size: 23761 | |
2008-10-31
| ||
10:53 | Change the way sqlite3VdbeSetColName() is called so as to remove a few lines of code. This also fixes #3470. (CVS 5853) file: [f22a6f45] check-in: [bfce9142] user: danielk1977 branch: trunk, size: 23780 | |
2008-10-09
| ||
18:48 | Fix an assert() failure that can occur if the user attempts to set an into an integer primary key column to a text value in a table that has a BEFORE UPDATE trigger. (CVS 5787) file: [ed233298] check-in: [c2cf9d60] user: danielk1977 branch: trunk, size: 23776 | |
2008-09-01
| ||
21:59 | Omit prototype for and calls to sqlite3MaterializeView() if !defined(SQLITE_OMIT_VIEW) && !defined(SQLITE_OMIT_TRIGGER). (CVS 5655) file: [206fffc8] check-in: [9cf484fc] user: shane branch: trunk, size: 23718 | |
2008-08-22
| ||
12:30 | Allow the WHERE clause in an UPDATE or DELETE against a view with an INSTEAD OF trigger to refer to the view by name. Ticket #3298. (CVS 5589) file: [f2cf6f00] check-in: [7360e5d1] user: drh branch: trunk, size: 23645 | |
2008-08-20
| ||
16:35 | Refactor the name resolution procedures in the code generator. (CVS 5569) file: [9e3786e7] check-in: [daf730d1] user: drh branch: trunk, size: 23654 | |
2008-07-28
| ||
19:34 | Implement the "lookaside" memory allocation cache. Use of this cache makes the speed1.test script run about 15% faster. Added new interfaces to control the cache. (CVS 5488) file: [79b77a3c] check-in: [e48f9697] user: drh branch: trunk, size: 23663 | |
2008-07-09
| ||
16:51 | Test coverage improvements on printf. (CVS 5385) file: [4e698fcc] check-in: [2d8f7beb] user: drh branch: trunk, size: 23637 | |
2008-07-08
| ||
23:40 | Remove obsolete code from select.c, including the "affinity" parameter to the sqlite3Select() module. (CVS 5380) file: [945242cc] check-in: [cbd3c158] user: drh branch: trunk, size: 23631 | |
2008-04-28
| ||
18:46 | Make sure that transactions are started on all virtual tables that changes in a single statement, not just the first. Ticket #3083. Need to add test cases. (CVS 5063) file: [2d7143b9] check-in: [133b7ee5] user: drh branch: trunk, size: 23634 | |
2008-04-15
| ||
14:36 | Do not attempt to omit unused columns of a view in an instead-of trigger since sometimes those columns can be used in ways that we do not expect. Ticket #3055. (CVS 5012) file: [57282dae] check-in: [f5fc42e9] user: drh branch: trunk, size: 23624 | |
2008-04-10
| ||
13:33 | First cut at optimizing single-row updates to use a one-pass algorithm. (CVS 4973) file: [d6f214aa] check-in: [fba97f78] user: drh branch: trunk, size: 23678 | |
2008-04-01
| ||
05:07 | Fix the CSE mechanism so that it takes into account column affinity changes that might be imposed by comparison operators. (CVS 4949) file: [6d5f7728] check-in: [91cc646e] user: drh branch: trunk, size: 23271 | |
2008-03-31
| ||
23:48 | Avoid duplicate OP_Column opcodes by remembering prior results. This is similar to CSE, but only applies to columns. (CVS 4943) file: [e23e83cf] check-in: [c29ee0fe] user: drh branch: trunk, size: 23284 | |
2008-03-25
| ||
09:47 | Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912) file: [2aefd3c9] check-in: [04715364] user: danielk1977 branch: trunk, size: 23212 | |
2008-03-19
| ||
20:42 | Undefine the "isView" macro when compiling with SQLITE_OMIT_VIEW so that the macro does not interfer with subsequent modules in the amalgamation. (CVS 4888) file: [d2c59643] check-in: [a42caa8f] user: drh branch: trunk, size: 23214 | |
2008-02-12
| ||
16:52 | When materializing a view for an UPDATE or DELETE make use of the WHERE clause to limit the number of rows materialized. Ticket #2938. (CVS 4782) file: [9b3be169] check-in: [5ab71c3a] user: drh branch: trunk, size: 23045 | |
2008-01-19
| ||
03:35 | Cleanup and simplification of constraint processing. Simplifications to the VM for better test coverage. (CVS 4729) file: [31edd9c9] check-in: [d9ebe9d7] user: drh branch: trunk, size: 23220 | |
2008-01-17
| ||
16:22 | Registerification of the VDBE is complete. The operand stack has been removed from the code. All instructions operate out of registers only. (CVS 4718) file: [2513c612] check-in: [706b41b7] user: drh branch: trunk, size: 23059 | |
02:36 | Registerification of the WHERE clause logic. (CVS 4716) file: [a4da9976] check-in: [b3a141b2] user: drh branch: trunk, size: 23105 | |
2008-01-10
| ||
23:50 | More work toward converting the VM into a register-based machine. (CVS 4704) file: [aad823f9] check-in: [8cbd4651] user: drh branch: trunk, size: 23105 | |
2008-01-09
| ||
23:04 | All essential opcodes can now operate out of registers and completely avoid the stack. Many still optionally use the stack to support legacy code generation, but the stack is not required. The next step is to update all code generation to avoid using the stack. (CVS 4700) file: [18f2f3af] check-in: [e3cf1c1c] user: drh branch: trunk, size: 22634 | |
02:15 | Continued work toward converting to a register-based VM. (CVS 4698) file: [93c7bca7] check-in: [92deff07] user: drh branch: trunk, size: 22637 | |
2008-01-08
| ||
18:57 | Finish registerizing the core logic of INSERT and UPDATE. (CVS 4696) file: [89ba3183] check-in: [5fd10367] user: drh branch: trunk, size: 22643 | |
02:57 | Progress toward registerification of the constraint checking logic for INSERT and UPDATE. (CVS 4693) file: [acd1c38d] check-in: [b9bf509e] user: drh branch: trunk, size: 22018 | |
2008-01-06
| ||
00:25 | Registerify the SRT_Subroutine destination for SELECT results. (CVS 4690) file: [38e9e4c2] check-in: [8201f717] user: drh branch: trunk, size: 22413 | |
2008-01-05
| ||
17:39 | First pass at optimizing max()/min() as described in #2853. Some refinements to come. (CVS 4687) file: [f322317e] check-in: [c449e04f] user: danielk1977 branch: trunk, size: 22404 | |
05:20 | Register-ify the OP_AddImm and all casting opcodes. Omit the OP_MemIncr opcode. (CVS 4683) file: [ac6cdfeb] check-in: [3e8a07dd] user: drh branch: trunk, size: 22393 | |
04:06 | Get rid of OP_Dup, OP_MemStore, OP_MemLoad, and OP_MemMove. Replace with OP_Copy, OP_SCopy, and OP_Move. Add the infrastructure for operation properties in1, in2, in3, out2, and out3 but do not yet use any of these. (CVS 4682) file: [3dc74434] check-in: [cc149eb9] user: drh branch: trunk, size: 22394 | |
2008-01-04
| ||
22:01 | Implement the out2-prerelease opcode design pattern. (CVS 4681) file: [e57d0083] check-in: [fe057a88] user: drh branch: trunk, size: 22396 | |
19:10 | Some modifications to insert.c to work without using the stack. (CVS 4678) file: [b54161c6] check-in: [d9ac6bee] user: danielk1977 branch: trunk, size: 22403 | |
13:57 | Modify FifoRead and FifoWrite to work exclusively with memory cells. (CVS 4676) file: [eaacf592] check-in: [2c913908] user: danielk1977 branch: trunk, size: 22351 | |
2008-01-03
| ||
23:44 | Change the sqlite3ExprCode() function so that callers can request that the result of the expression be left on the stack or in a register. (CVS 4673) file: [a68e11e7] check-in: [61bfb77c] user: drh branch: trunk, size: 22344 | |
18:03 | Registers (aka memory cells) in the VM are now numbered starting with 1 instead of 0. A register number of 0 means "no such register". (CVS 4669) file: [b4aa2e8b] check-in: [0b849805] user: drh branch: trunk, size: 22338 | |
17:31 | Modify OP_VUpdate to read arguments from a range of memory cells instead of from the stack. (CVS 4668) file: [b4b8790d] check-in: [955b15a0] user: danielk1977 branch: trunk, size: 22346 | |
09:51 | Change the OP_Insert opcode to read the key and data to insert from memory cells, not the stack. (CVS 4666) file: [9b90a5d5] check-in: [46501f49] user: danielk1977 branch: trunk, size: 22312 | |
08:08 | Combine the OP_Column and OP_DfltValue opcodes. (CVS 4664) file: [587df277] check-in: [c30f8206] user: danielk1977 branch: trunk, size: 22324 | |
07:54 | Change OP_OpenRead and OP_OpenWrite so that the database number is read from the P3 operand, not the stack. (CVS 4663) file: [c6712952] check-in: [35da261d] user: danielk1977 branch: trunk, size: 22372 | |
00:01 | Refactoring the VM. The P3 parameter is changed to P4. A P5 parameter is added (though not currently used.) Add routines sqlite3VdbeAddOpX() where X is one of 0, 1, 2, 3, or 4. (CVS 4660) file: [39ac597c] check-in: [027875e4] user: drh branch: trunk, size: 22412 | |
2008-01-02
| ||
16:27 | Combine the eDest and iParm arguments to sqlite3Select() into a single type - "SelectDest". (CVS 4657) file: [608ecf1f] check-in: [86dcdfe6] user: danielk1977 branch: trunk, size: 22359 | |
11:50 | Take advantage of the fact that b-tree cursors need not be closed while other cursors modify their tables to simplify trigger program generation code. (CVS 4654) file: [24ab2157] check-in: [f1966a8a] user: danielk1977 branch: trunk, size: 22255 | |
00:34 | Begin setting a foundation on which to convert the VM from a stack-based to a register-based machine. Everything is still mostly stack based with this check-in. This change merely begins adding infrastructure to support a register-based architecture. (CVS 4652) file: [fee85700] check-in: [051ec01f] user: drh branch: trunk, size: 22791 | |
2008-01-01
| ||
19:02 | Optimize trigger compilation to avoid populating the OLD.* and NEW.* pseudo-tables with data that will never be used. Some testing to come. (CVS 4651) file: [59124a9d] check-in: [e08a33ed] user: danielk1977 branch: trunk, size: 22783 | |
2007-12-12
| ||
16:06 | Fix some problems similar to #2832, but caused by triggers instead of an OR REPLACE clause. (CVS 4615) file: [57c07b63] check-in: [ee98ae17] user: danielk1977 branch: trunk, size: 21420 | |
12:25 | Fix database corrupting code generation error for UPDATE OR REPLACE. ticket #2832. Still need to add test cases and additional defensive logic to avoid future occurrences of similar problems. (CVS 4613) file: [e773be79] check-in: [18e10f81] user: drh branch: trunk, size: 21406 | |
12:00 | Add a new OP_StackDepth opcode to help detect VDBE stack leaks early, before they cause damage. For diagnostics in ticket #2832. (CVS 4612) file: [3725377d] check-in: [3fd6a267] user: drh branch: trunk, size: 21397 | |
2007-11-11
| ||
18:36 | Fix the code generation for UPDATE and DELETE so that BEFORE triggers that use RAISE(IGNORE) do not leave extra values on the stack. Ticket #2767 (CVS 4535) file: [2add92a6] check-in: [3391f413] user: drh branch: trunk, size: 21301 | |
2007-08-16
| ||
10:09 | More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [e89b980b] check-in: [77b16713] user: danielk1977 branch: trunk, size: 21108 | |
04:30 | Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) file: [b20d7730] check-in: [deb7ecd6] user: drh branch: trunk, size: 21082 | |
2007-06-25
| ||
16:29 | Fix for #2445. A bug in the lookupName() logic that could cause a crash when a WHERE clause used an alias to refer to an expression in the result-set of the SELECT, and that expression was itself a reference to a table column. (CVS 4122) file: [6b10becb] check-in: [044ca1c7] user: danielk1977 branch: trunk, size: 20896 | |
2007-03-29
| ||
05:51 | Change BtreeMoveto so that it can be biased to the right or to the center. Use a right bias when appending and a center bias when searching. This gives about a 15% reduction in calls to sqlite3VdbeRecordCompare. (CVS 3741) file: [3359041d] check-in: [ad4a6b1a] user: drh branch: trunk, size: 20860 | |
2007-02-21
| ||
17:04 | Modify the fix for #2244 to avoid using a vdbe label. (CVS 3653) file: [876b3142] check-in: [f7ce74b2] user: danielk1977 branch: trunk, size: 20865 | |
16:52 | Fix for an UPDATE on a virtual table when the WHERE clause matches zero rows. Ticket #2244. (CVS 3652) file: [9a05e12b] check-in: [43bf7978] user: danielk1977 branch: trunk, size: 20980 | |
2007-02-07
| ||
01:06 | Change the coding of PRAGMA count_changes so that it uses memory cells of the VM rather than the stack, to avoid problems with leftovers on the stack interfering with other operations. Ticket #2217. (CVS 3632) file: [bdfcf360] check-in: [2bd4b62a] user: drh branch: trunk, size: 20823 | |
2006-06-27
| ||
13:20 | Changes so that it will build with SQLITE_OMIT_VIRTUALTABLE=1. (CVS 3309) file: [951f95ef] check-in: [5612b287] user: drh branch: trunk, size: 20662 | |
2006-06-24
| ||
11:51 | A few more test cases to improve coverage of virtual table module related code. (CVS 3292) file: [e3f5b7e9] check-in: [255aa912] user: danielk1977 branch: trunk, size: 20599 | |
2006-06-19
| ||
03:05 | Add tests to ensure an INSERT/UPDATE/DELETE immediately after virtual table construction does not fail. (CVS 3270) file: [686b13db] check-in: [144d0eb1] user: danielk1977 branch: trunk, size: 20649 | |
2006-06-17
| ||
09:39 | Add tests (and fixes) for the virtual table transaction interface. (CVS 3265) file: [23a71cce] check-in: [8a5b121f] user: danielk1977 branch: trunk, size: 20675 | |
06:31 | When updating a view, invoke the authorization callback for reading the view before setting the authorization-context to the view name. (CVS 3264) file: [81e8d54a] check-in: [48d297c5] user: danielk1977 branch: trunk, size: 20644 | |
03:27 | Fixes for UPDATE statements on virtual tables. (CVS 3263) file: [37fb7bb2] check-in: [81c5a5b4] user: danielk1977 branch: trunk, size: 20644 | |
2006-06-16
| ||
21:13 | Rework the way UPDATE works for virtual tables. (CVS 3262) file: [4fb474fa] check-in: [2119e7bf] user: drh branch: trunk, size: 20620 | |
16:08 | Add code to invoke the virtual table transaction interface. Untested at this point. (CVS 3261) file: [d3b99190] check-in: [61251402] user: danielk1977 branch: trunk, size: 17599 | |
2006-06-14
| ||
19:00 | Added code to INSERT, DELETE and UPDATE virtual tables. The new code is mostly untested. (CVS 3248) file: [5e638a61] check-in: [32c97b88] user: drh branch: trunk, size: 17558 | |
2006-06-11
| ||
23:41 | Progress toward CREATE VIRTUAL TABLE. Still not even close to working... (CVS 3211) file: [0186f094] check-in: [898ec36b] user: drh branch: trunk, size: 16498 | |
2006-02-24
| ||
02:53 | Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) file: [34add66f] check-in: [4b22e4b8] user: drh branch: trunk, size: 16500 | |
2006-02-10
| ||
02:27 | Add the column_origin_name() etc. APIs. (CVS 3069) file: [050a7e0d] check-in: [82f502cd] user: danielk1977 branch: trunk, size: 16512 | |
2006-01-18
| ||
16:51 | Use a global variable protected by a mutex instead of thread-specific-data to record malloc() failures. (CVS 2972) file: [14be4ba2] check-in: [ac090f2a] user: danielk1977 branch: trunk, size: 16498 | |
2006-01-11
| ||
21:41 | Automatically deallocate thread-specific data when it is no longer being used. Ticket #1601. Also implemented the suggestion of ticket #1603. Memory management is now off by default at compile-time. The sqlite3_enable_memory_management() API has been removed. (CVS 2919) file: [261d75c7] check-in: [5d9c6aa9] user: drh branch: trunk, size: 16510 | |
2006-01-10
| ||
17:58 | Store collation sequence names instead of pointers in sharable schema data structures. (CVS 2904) file: [cd8ad5bb] check-in: [0f0213be] user: danielk1977 branch: trunk, size: 16501 | |
2006-01-09
| ||
16:12 | Fix some errors to do with attached databases and text encodings in shared-cache mode. (CVS 2895) file: [e09da54c] check-in: [3e75d3d5] user: danielk1977 branch: trunk, size: 16516 | |
06:29 | Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) file: [9a376125] check-in: [82b81f69] user: danielk1977 branch: trunk, size: 16516 | |
2006-01-07
| ||
13:21 | In shared-cache mode, lock all required tables before beginning to execute the body of the statement program. (CVS 2881) file: [29ba0385] check-in: [23b587b0] user: danielk1977 branch: trunk, size: 16509 | |
2006-01-05
| ||
11:34 | Add the shared schema/pager modifications. Very few tests so far. (CVS 2859) file: [c72e9cbb] check-in: [deeda0dc] user: danielk1977 branch: trunk, size: 16602 | |
2005-12-06
| ||
12:52 | Some elements of the new malloc() failure handling. Not all cases work properly yet. Also, library is not threadsafe if malloc() fails right now. (CVS 2800) file: [ec8e5406] check-in: [e1606658] user: danielk1977 branch: trunk, size: 16489 | |
2005-11-14
| ||
22:29 | Create separate affinities for INTEGER and REAL. (CVS 2766) file: [fec76651] check-in: [ce06c123] user: drh branch: trunk, size: 16476 | |
2005-09-20
| ||
17:42 | Code cleanup and simplification. Three new Mem opcodes added. The sqlite3VdbeJumpHere function added. (CVS 2730) file: [ac506fb7] check-in: [2471957f] user: drh branch: trunk, size: 16471 | |
2005-09-08
| ||
01:58 | Optimizations and refinements. Improvements to test coverage. (CVS 2667) file: [c2716c21] check-in: [7283f7c2] user: drh branch: trunk, size: 16498 | |
2005-07-21
| ||
18:23 | Split the OP_Integer opcode into OP_Integer and OP_Int64. This allows comments to be added to OP_Integer. Cleanup in the optimizer. Allow terms of the FROM clause to be reordered automatically. (CVS 2556) file: [a9d2c5f5] check-in: [e2f822ac] user: drh branch: trunk, size: 16499 | |
2005-07-08
| ||
13:08 | Replace OP_List with OP_Fifo. This is the first step toward allowing recursive delete triggers and later foreign keys with cascading deletes. (CVS 2538) file: [49a9c618] check-in: [94c120bb] user: drh branch: trunk, size: 16401 | |
2005-06-12
| ||
21:35 | Update older opcode names to be more meaningful in light of the latest code design. (CVS 2506) file: [e96c7b34] check-in: [36f2da1f] user: drh branch: trunk, size: 16538 | |
2005-04-22
| ||
02:38 | Remove some vestigal code. Add the experimental sqlite3_transfer_bindings() API. (CVS 2446) file: [04ea9dd7] check-in: [88b39436] user: drh branch: trunk, size: 16550 | |
2005-04-08
| ||
16:08 | Fixed stack growth in update trigger on views (tkt #1169) (CVS 2443) file: [ddfd8afa] check-in: [99fcd556] user: kwel branch: trunk, size: 16554 | |
2005-03-09
| ||
12:26 | Support for a future ALTER TABLE command to add columns with default values. (CVS 2367) file: [42823d00] check-in: [9d5abc1d] user: danielk1977 branch: trunk, size: 16551 | |
2005-01-29
| ||
08:32 | Modify sub-query handling. Tickets #1083 and #1084. (CVS 2286) file: [b6f4668c] check-in: [b1b50f31] user: danielk1977 branch: trunk, size: 14803 | |
2005-01-19
| ||
23:24 | Continued refactoring of the name resolution logic and query optimizer. (CVS 2236) file: [6e5c6eb6] check-in: [d8b2a7e0] user: drh branch: trunk, size: 14663 | |
2005-01-18
| ||
04:00 | Refinements to the name resolution logic. Change the name of the keywordhash.c file to keywordhash.h. (CVS 2229) file: [48da2524] check-in: [0142ae6f] user: drh branch: trunk, size: 14654 | |
2005-01-17
| ||
22:08 | Infrastructure changes to handle name resolution differently. This is needed to fix various long-standing problems with column names in joins. It will also make the implementation of correlated subqueries easier. (CVS 2228) file: [79a15111] check-in: [4a753439] user: drh branch: trunk, size: 14660 | |
2004-12-25
| ||
01:03 | Fix ticket #1046 by removing code and simplifying the query optimizer. Remarkably, this simplification also makes the optimizer do a better job. Ticket #1051 was fixed as a side-effect. (CVS 2172) file: [0979397c] check-in: [5fd1f471] user: drh branch: trunk, size: 14663 | |
2004-12-07
| ||
15:41 | Only evaluate expressions once for UPDATE and INSERT statements that have BEFORE triggers. Fix for ticket #980. (CVS 2158) file: [aa92fa22] check-in: [4852186a] user: drh branch: trunk, size: 14623 | |
14:06 | Simplify the trigger logic for DELETE, INSERT, and UPDATE. (CVS 2157) file: [67a95e5c] check-in: [8e164ab2] user: drh branch: trunk, size: 14655 | |
2004-11-23
| ||
01:47 | More work on the implementation of cursors, but they are still not functioning. (CVS 2142) file: [d79d1936] check-in: [8b61d1ae] user: drh branch: trunk, size: 15117 | |
2004-11-22
| ||
10:02 | Back out changes allowing writes to tables that have open cursors. (CVS 2133) file: [24a605a4] check-in: [91acd87e] user: danielk1977 branch: trunk, size: 15122 | |
2004-11-16
| ||
15:50 | Perform deletes in a single pass. (CVS 2104) file: [395a2b27] check-in: [a2e1c35b] user: danielk1977 branch: trunk, size: 15126 | |
2004-11-05
| ||
17:17 | Create table now works with sqlite3NestedParse. This changed uncovered a latent bug in xprintf which is also fixed. (CVS 2069) file: [3cc67f60] check-in: [b0506bdd] user: drh branch: trunk, size: 15114 | |
06:02 | When using sqlite3NestedParse() to modify the sqlite_master table, do not code OP_Callback. (CVS 2063) file: [50ac56ab] check-in: [296a298c] user: danielk1977 branch: trunk, size: 15098 | |
2004-11-04
| ||
04:42 | All tests pass even if OMIT_TRIGGER is defined. (CVS 2053) file: [7b17b281] check-in: [c33b3a61] user: drh branch: trunk, size: 14943 | |
2004-10-31
| ||
02:22 | Insert #ifdefs that can optionally remove features at compiletime resulting in a database engine with a smaller footprint. (CVS 2034) file: [ee15b7ba] check-in: [be661acf] user: drh branch: trunk, size: 14902 | |
2004-10-05
| ||
02:41 | Add support for DEFERRED, IMMEDIATE, and EXCLUSIVE transactions. (CVS 2000) file: [174c3b59] check-in: [81ff8107] user: drh branch: trunk, size: 14577 | |
2004-09-19
| ||
02:15 | Add comments to unused P3 fields of selected instructions when NDEBUG is not defined. This makes VDBE program dumps more readable during debugging. (CVS 1973) file: [71570842] check-in: [4871c77f] user: drh branch: trunk, size: 14614 | |
2004-09-06
| ||
17:24 | Fix a naming conflict between sqlite versions 2 and 3. An open sqlite3 connection now *must* be called "sqlite3". You cannot call it "sqlite". This might break existing code. (CVS 1941) file: [0e003007] check-in: [3ddf5a9d] user: drh branch: trunk, size: 14739 | |
2004-08-31
| ||
13:45 | Simplifications and optimizations. Also: disable the corrupt.test for now. (CVS 1924) file: [bbe126c6] check-in: [8fd65e70] user: drh branch: trunk, size: 14739 | |
2004-08-21
| ||
17:54 | Optimizations to the code generator. (CVS 1899) file: [151f1869] check-in: [bd6649c5] user: drh branch: trunk, size: 14691 | |
2004-06-21
| ||
06:50 | Update sqlite3_changes() to match the documentation and add sqlite3_total_changes(). (CVS 1645) file: [b66b1896] check-in: [ae2f4a09] user: danielk1977 branch: trunk, size: 14922 | |
2004-06-16
| ||
12:02 | Trivial modifications to prevent compiler warnings. (CVS 1607) file: [f9a03233] check-in: [7974c9a6] user: danielk1977 branch: trunk, size: 14935 | |
2004-06-13
| ||
00:54 | More speed improvements. (CVS 1580) file: [6133c876] check-in: [c5ebc1c0] user: drh branch: trunk, size: 14927 | |
2004-06-10
| ||
10:50 | Add the sqlite3_collation_needed() API and fix some error handling cases involving unknown collation sequences. (CVS 1562) file: [168b6d52] check-in: [edf069b9] user: danielk1977 branch: trunk, size: 14929 | |
2004-05-29
| ||
11:24 | Transform OP_HexBlob and OP_String8 to OP_Blob and OP_String the first time they are executed. (CVS 1492) file: [259f06e7] check-in: [3225de89] user: danielk1977 branch: trunk, size: 14857 | |
2004-05-26
| ||
10:11 | Add some tests for the new API. Many more to come. (CVS 1462) file: [96461bcf] check-in: [d5659f2e] user: danielk1977 branch: trunk, size: 14855 | |
2004-05-25
| ||
23:35 | Move the sqlite3_exec() function to legacy.c. (CVS 1455) file: [2b5ec85f] check-in: [9385ad5c] user: danielk1977 branch: trunk, size: 14866 | |
2004-05-20
| ||
22:16 | Add internal support for collating sequences. This breaks 244 tests. (CVS 1420) file: [1a5e9182] check-in: [a6cb09d7] user: drh branch: trunk, size: 14825 | |
2004-05-19
| ||
14:56 | Change opcode names and comments to better describe the operation of the incrKey flag. OP_MoveTo becomes OP_MoveGe. (CVS 1407) file: [1f6687f8] check-in: [8f249c45] user: drh branch: trunk, size: 14769 | |
2004-05-18
| ||
09:58 | Fix many problems with manifest types and column affinity. Most things are working now. (CVS 1392) file: [0cc7291d] check-in: [a62872aa] user: danielk1977 branch: trunk, size: 14780 | |
01:23 | Omit the '\0' at the end of UTF-8 strings on disk (it is implied). Also don't store the number of rows at the beginning of each table record. (CVS 1390) file: [d14a0b0f] check-in: [202a470f] user: danielk1977 branch: trunk, size: 14651 | |
2004-05-16
| ||
11:15 | More changes to support the manifest type model. A few things are currently broken. (CVS 1385) file: [04492438] check-in: [a4af838f] user: danielk1977 branch: trunk, size: 14527 | |
2004-05-14
| ||
11:00 | Implement type affinity for table and index records (CVS 1375) file: [0441f8b6] check-in: [dbfe6e93] user: danielk1977 branch: trunk, size: 14453 | |
2004-05-10
| ||
10:34 | Change the names of external symbols from sqlite_XXX to sqlite3_XXX. (CVS 1338) file: [6ca82fc4] check-in: [2242423e] user: danielk1977 branch: trunk, size: 14418 | |
2004-05-08
| ||
08:23 | Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the library links again. It doesn't work yet, due to changes in the btree layer calling convention. (CVS 1324) file: [475465fc] check-in: [8af6474c] user: danielk1977 branch: trunk, size: 14417 | |
2004-04-29
| ||
16:16 | Fix a stack overflow problem with INSTEAD OF triggers. (CVS 1310) file: [bd391079] check-in: [5a33e0b0] user: drh branch: version_2, size: 14764 | |
2004-02-22
| ||
20:05 | Use sqliteVdbeOp3 instead of sqliteVdbeChangeP3 where applicable. (CVS 1266) file: [4c50328e] check-in: [51f1e8f7] user: drh branch: trunk, size: 14324 | |
2004-02-20
| ||
22:53 | Fixed behaviour of last_insert_rowid() with triggers and add last_statement_change_count() function that works correctly with triggers. (CVS 1251) file: [e6eed1a4] check-in: [3383413a] user: rdc branch: trunk, size: 14357 | |
2004-02-16
| ||
03:44 | Remove the NullCallback opcode. Handle the empty_result_set pragma inside the sqlite_exec() function. (CVS 1244) file: [10459f44] check-in: [f7213485] user: drh branch: trunk, size: 14315 | |
2003-06-01
| ||
01:10 | Add the ability to INSERT or UPDATE using the "rowid" column even on tables that lack an integer primary key. (CVS 991) file: [24260b4f] check-in: [903adbe8] user: drh branch: trunk, size: 14315 | |
2003-05-17
| ||
17:35 | Fix problems with TEMP indices that lead to corrupt databases. These problems were discovered while working on ticket #317. No sure yet if that ticket is fixed. (CVS 981) file: [8e657c7b] check-in: [01398fb7] user: drh branch: trunk, size: 14175 | |
2003-05-02
| ||
14:32 | VDBE cursors numbers for tables in a join do not have to be consecutive. This is one step on the road to fixing ticket #272. (CVS 947) file: [dc3b680b] check-in: [be7aed20] user: drh branch: trunk, size: 14201 | |
2003-04-25
| ||
17:52 | Report the correct authorization context in the authorization callback when coding an INSTEAD OF trigger on an update or delete. (CVS 936) file: [f40376ed] check-in: [67746833] user: drh branch: trunk, size: 14205 | |
2003-04-24
| ||
01:45 | Fix some issues with INSTEAD OF triggers. (CVS 930) file: [b7fa7c42] check-in: [206b1739] user: drh branch: trunk, size: 13881 | |
2003-04-22
| ||
20:30 | Update the authorizer API so that it reports the database that table and indices belong to and so that it reports when actions are taken in response to a trigger. (CVS 928) file: [33014487] check-in: [c675a550] user: drh branch: trunk, size: 13328 | |
2003-04-20
| ||
17:29 | Added tests for the in-memory database backend. Also updated some comments in other modules. (CVS 924) file: [803c13ad] check-in: [fb89adf4] user: drh branch: trunk, size: 13302 | |
2003-04-17
| ||
22:57 | Fix triggers to work in an ATTACHed database. Ticket #295. (CVS 915) file: [7f1aa891] check-in: [1e5e00fb] user: drh branch: trunk, size: 13276 | |
2003-04-15
| ||
19:22 | Get triggers working on tables with INTEGER PRIMARY KEYs. Ticket #291. This may also fix #159. Still need to add tests so both bugs remain open for the time being. (CVS 908) file: [a60470d0] check-in: [0b996959] user: drh branch: trunk, size: 13681 | |
2003-03-31
| ||
02:12 | Add the sqliteErrorMsg() function and use it to generate error message text during parsing and code generation. This simplifies the code somewhat and makes it easier to handle names with a database prefix. (CVS 891) file: [b368369f] check-in: [1d3fc977] user: drh branch: trunk, size: 13297 | |
2003-03-27
| ||
13:50 | Regression tests now work - except for some changes in error message text. The library is now safe to use for experimental work. (CVS 885) file: [ab8c48ce] check-in: [8a593e9c] user: drh branch: trunk, size: 13341 | |
12:51 | Changes to the "sqlite" structure that allow simultaneous operations on multiple database files. Many regession tests pass - but not all of them. Do not use this version except for debugging SQLite itself. (CVS 883) file: [785e0e1c] check-in: [d2fb2bb5] user: drh branch: trunk, size: 13333 | |
2003-03-20
| ||
01:16 | Record the database name in addition to the table name for DELETE, INSERT, and UPDATE statements. (CVS 879) file: [5c644629] check-in: [a5d8fc95] user: drh branch: trunk, size: 13233 | |
2003-03-19
| ||
03:14 | Modifications to the VDBE to support more than one database file. (CVS 878) file: [c523bf6e] check-in: [875da9ee] user: drh branch: trunk, size: 13282 | |
2003-01-13
| ||
23:27 | Revise the sqlite_set_authorizer API to provide more detailed information about the SQL statement being authorized. Only partially tested so far. (CVS 830) file: [f06afa9b] check-in: [45de93f9] user: drh branch: trunk, size: 13246 | |
2003-01-12
| ||
18:02 | Initial check-in of the code for the new sqlite_set_authorizer() API function. The code is mostly untested at this point. (CVS 827) file: [9f2e9105] check-in: [52d5007f] user: drh branch: trunk, size: 13136 | |
2003-01-11
| ||
13:30 | Remove the ColumnCount opcode, which had become a no-op. (CVS 821) file: [ab3182ea] check-in: [86deb12d] user: drh branch: trunk, size: 12844 | |
2002-09-14
| ||
13:47 | Do not put a write lock on the main database file when writing to a temporary table. (CVS 750) file: [881e4c8e] check-in: [3f253afe] user: drh branch: trunk, size: 12890 | |
2002-07-21
| ||
23:09 | UPDATE triggers on TEMP tables were broken. (CVS 693) file: [f07e6ed2] check-in: [c080ed01] user: danielk1977 branch: trunk, size: 12861 | |
2002-07-16
| ||
17:22 | Fix for ticket #105: Fix the UPDATE command so that it works properly with indexed tables when there is a subquery in the WHERE clause. Add tests to verify correct operation. (CVS 680) file: [ddba82d1] check-in: [bbca16f8] user: drh branch: trunk, size: 12827 | |
2002-07-05
| ||
21:42 | All the code is now in place for SQLite to distinguish between NUMERIC and TEXT datatypes. Still need to turn on the new code and test it. (CVS 659) file: [494479cc] check-in: [b4737a16] user: drh branch: trunk, size: 12516 | |
2002-06-29
| ||
02:20 | Add a few more tests and fix a few bugs that the tests uncovered. (CVS 652) file: [06303bf3] check-in: [91c0db66] user: drh branch: trunk, size: 12512 | |
2002-06-19
| ||
14:27 | The query optimizer now attempts to satisfy an ORDER BY clause using an index. Sorting is still used if there are no suitable indices. (CVS 628) file: [6f6a4dcd] check-in: [f09e19b4] user: drh branch: trunk, size: 12638 | |
2002-06-11
| ||
02:25 | Add RAISE() function, which allows more advanced flow-control in trigger programs (ticket #55) (CVS 614) file: [05431e23] check-in: [d4a2fb10] user: danielk1977 branch: trunk, size: 12643 | |
2002-05-24
| ||
02:04 | Split the IdList structure into IdList and SrcList. SrcList is used to represent a FROM clause and IdList is used for everything else. This change allows SrcList to grow to support outer joins without burdening the other uses of IdList. (CVS 584) file: [f6837517] check-in: [a167b71d] user: drh branch: trunk, size: 12623 | |
2002-05-23
| ||
22:07 | Change the names of the PushList and PopList opcodes to ListPush and ListPop so that they will appear together with the other List opcodes in the documentation. (CVS 583) file: [1f8f7fde] check-in: [c53b0b92] user: drh branch: trunk, size: 12607 | |
12:50 | Partial fix for ticket #49. The correct result is computed, but now we have a memory leak. I'm not sure if the memory leak was pre-existing or a result of this change. (CVS 581) file: [82ada80c] check-in: [4d27ee41] user: drh branch: trunk, size: 12619 | |
2002-05-21
| ||
11:38 | Additional code cleanup resulting from a review of the new trigger code. (CVS 572) file: [46c4b3e8] check-in: [37dbdd55] user: drh branch: trunk, size: 12613 | |
2002-05-19
| ||
23:43 | Style fixes to triggers code in various *.c files (partial fix to ticket #39) (CVS 571) file: [6b1d80b5] check-in: [8a4195c7] user: danielk1977 branch: trunk, size: 12623 | |
2002-05-15
| ||
11:44 | Remove all tabs from the beginning of source code lines. Replace tabs with the appropriate number of spaces. (CVS 565) file: [f9b53d46] check-in: [690f9a16] user: drh branch: trunk, size: 12543 | |
08:30 | Added FOR EACH ROW triggers functionality (CVS 562) file: [2e8becd1] check-in: [794bf67b] user: danielk1977 branch: trunk, size: 12439 | |
2002-03-03
| ||
18:59 | VIEWs are bound to tables when they are used, not when they are first entered. This works around the problem of what to do if a table is deleted that a view refers to. (CVS 415) file: [7dd714a6] check-in: [6121e5ab] user: drh branch: trunk, size: 9146 | |
2002-03-02
| ||
17:04 | Subquery flattening is implemented and passes all regression tests. We still need to add addition tests to the suite to further exercise the flattener, however. (CVS 408) file: [943b8219] check-in: [d5d3e79c] user: drh branch: trunk, size: 9084 | |
2002-02-23
| ||
02:32 | Code to implement CREATE VIEW is in place. A quick smoke test shows that it works, but there are probably still many bugs. (CVS 387) file: [18971d26] check-in: [39fed2df] user: drh branch: trunk, size: 9172 | |
2002-02-02
| ||
18:49 | Get the ABORT conflict resolution algorithm working. (CVS 362) file: [95459f94] check-in: [9be4d4c6] user: drh branch: trunk, size: 9656 | |
2002-01-31
| ||
15:54 | Change to five conflict resolution algorithms: ROLLBACK, ABORT, FAIL, IGNORE, and REPLACE. This checkin is code only. Documentation and tests are still needed. Also, ABORT is not fully implemented. (CVS 360) file: [3fb7c160] check-in: [d0e7cf4a] user: drh branch: trunk, size: 9651 | |
2002-01-30
| ||
16:17 | Added ON CONFLICT support to COPY. Updates to documentation. Bug fixes. (CVS 359) file: [c6215079] check-in: [cf1538d7] user: drh branch: trunk, size: 9851 | |
2002-01-29
| ||
23:07 | The new ON CONFLICT logic is in and passes the legacy tests. But the new capabilities have not been tested and are likely broken. (CVS 356) file: [5ffd4bbd] check-in: [ac8a4189] user: drh branch: trunk, size: 9847 | |
18:41 | Beginning to insert the infrastructure for ON CONFLICT clauses. (CVS 355) file: [2ece9c43] check-in: [e00a9ff8] user: drh branch: trunk, size: 9672 | |
2002-01-28
| ||
15:53 | Bug fix: The IN operator was not working if either side derived from an INTEGER PRIMARY KEY. (CVS 354) file: [6f87a9aa] check-in: [dbcfe198] user: drh branch: trunk, size: 9609 | |
2002-01-22
| ||
03:13 | The right-hand side of an AS in a SELECT can be used within expressions of the WHERE, ORDER BY, GROUP BY, and/or HAVING clauses. (CVS 350) file: [f30a4792] check-in: [3684beab] user: drh branch: trunk, size: 9603 | |
2002-01-14
| ||
02:56 | Fix a bug that could cause UPDATE to fail for a table that contains both an INTEGER PRIMARY KEY and an index. (CVS 346) file: [5cb326ed] check-in: [96cd07a8] user: drh branch: trunk, size: 9597 | |
2001-12-31
| ||
02:48 | Comment changes. Change the use of BTree so that either the key is an integer or the data is empty. (CVS 337) file: [f9f48e78] check-in: [18e606f7] user: drh branch: trunk, size: 9597 | |
2001-12-22
| ||
14:49 | Bug fixing in the new integer primary key code. (CVS 334) file: [6a77d145] check-in: [29cab124] user: drh branch: trunk, size: 9419 | |
2001-12-21
| ||
14:30 | Added support for the INTEGER PRIMARY KEY column type. (CVS 333) file: [9c266e5c] check-in: [236a54d2] user: drh branch: trunk, size: 9416 | |
2001-11-21
| ||
02:21 | Attempting to add support for 64-bit platforms. (CVS 314) file: [365f6faf] check-in: [03673adb] user: drh branch: trunk, size: 8367 | |
2001-11-07
| ||
14:22 | Incremental update. We are in the middle of modifying the index system to support range queries without doing a complete table scan. (CVS 303) file: [b1e315e2] check-in: [e6ca23fa] user: drh branch: trunk, size: 8375 | |
2001-11-01
| ||
14:41 | Remove cruft: restrict the number of sorters and lists in the VDBE to one since no more than one was ever used anyway. This eliminates several op-codes and simplifies the implementation of several others. (CVS 297) file: [4eeb154a] check-in: [e1370276] user: drh branch: trunk, size: 8375 | |
2001-10-15
| ||
00:44 | Added support for the COUNT_CHANGES pragma in order to help out the ODBC driver. Fixed a but on count(*) when applied to empty tables. (CVS 289) file: [c916182c] check-in: [747bf1b3] user: drh branch: trunk, size: 8416 | |
2001-10-13
| ||
01:06 | Remove the P3 and label arguments from the internal sqliteVdbeAddOp() function. This makes the code easier to read and perhaps smaller as well. (CVS 286) file: [0b287faf] check-in: [288ef124] user: drh branch: trunk, size: 7844 | |
2001-10-08
| ||
13:22 | Support for temporary tables added. Still need more testing. (CVS 279) file: [49a1edb1] check-in: [9368c62e] user: drh branch: trunk, size: 7956 | |
2001-09-27
| ||
03:22 | Added basic support for enforcement of UNIQUE on indices and primary keys. Support for addition constraints is to follow. (CVS 267) file: [0449af17] check-in: [34c42967] user: drh branch: trunk, size: 7855 | |
2001-09-23
| ||
02:35 | Fixes to the locking and rollback behavior. (CVS 261) file: [8de22957] check-in: [337b3d3b] user: drh branch: trunk, size: 7842 | |
2001-09-16
| ||
00:13 | Disclaimed copyright. Preparing for release 2.0. (CVS 250) file: [a1952ad5] check-in: [4e926efe] user: drh branch: trunk, size: 7759 | |
2001-09-15
| ||
00:57 | Everything is working on Linux. This is release 2.0-Alpha-1. (CVS 246) file: [8a9d514c] check-in: [14474fa1] user: drh branch: trunk, size: 8314 | |
2001-09-13
| ||
13:46 | The code is in place to replace GDBM with BTree. But I have not yet attempted to compile it. I am sure the code contains bugs. (CVS 238) file: [ea8f2c07] check-in: [6ecc8b20] user: drh branch: trunk, size: 8237 | |
2001-04-11
| ||
14:28 | better handling of out-of-memory errors (CVS 207) file: [0cf78965] check-in: [86b30cd0] user: drh branch: trunk, size: 8031 | |
2001-03-14
| ||
12:35 | Fix a bug on systems where malloc(0) return NULL. Add code to detect this bug even on systems were it used not to occur. (CVS 190) file: [8365b392] check-in: [bda83e2b] user: drh branch: trunk, size: 7923 | |
2001-01-15
| ||
22:51 | continued progress toward version 2.0 (CVS 177) file: [9692fbac] check-in: [c6ffb7ec] user: drh branch: trunk, size: 7898 | |
2000-06-21
| ||
13:59 | :-) (CVS 104) file: [51b9ef74] check-in: [e1bf96a4] user: drh branch: trunk, size: 7892 | |
2000-06-19
| ||
19:09 | :-) (CVS 102) file: [162fc0b8] check-in: [8cce4d27] user: drh branch: trunk, size: 7872 | |
2000-06-17
| ||
13:12 | :-) (CVS 101) file: [d75df0f7] check-in: [6ed35a1d] user: drh branch: trunk, size: 7865 | |
2000-06-07
| ||
23:51 | :-) (CVS 74) file: [d8d90df7] check-in: [2ffeb850] user: drh branch: trunk, size: 7916 | |
2000-06-06
| ||
13:54 | added IN and BETWEEN operators (CVS 57) file: [18746f92] check-in: [54d19818] user: drh branch: trunk, size: 7979 | |
2000-06-03
| ||
18:06 | added default values (CVS 46) file: [3f05d508] check-in: [27c06786] user: drh branch: trunk, size: 7689 | |
2000-06-02
| ||
01:17 | :-) (CVS 34) file: [1f7284e0] check-in: [52338f4a] user: drh branch: trunk, size: 7684 | |
2000-05-31
| ||
15:34 | added aggregate functions like count(*) (CVS 21) file: [9194f548] check-in: [dee7a8be] user: drh branch: trunk, size: 7631 Added | |