/ File History
Login

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

History of src/vdbeaux.c

2019-09-16
12:35
Merge all recent trunk enhancements into the reuse-schema branch. file: [38f1e2dc] check-in: [27eb2236] user: drh branch: reuse-schema, size: 160557
12:08
Merge recent trunk enhancements into the begin-concurrent branch. file: [49cd1781] check-in: [93b9ef3f] user: drh branch: begin-concurrent, size: 161112
2019-08-22
19:35
Merge fixes from trunk. Also fix a reference to the KeyInfo.aSortOrder field, which should now be KeyInfo.aSortFlags file: [7ccf4181] check-in: [63e625c8] user: drh branch: nulls-last, size: 160486
2019-08-13
15:22
Merge latest trunk changes with this branch. file: [2edbf3ca] check-in: [5b4689d8] user: dan branch: reuse-schema, size: 159924
2019-08-12
16:36
Experimental implementation of NULLS FIRST/LAST. This branch still has problems - the most significant of which is that ORDER BY clauses with a non-default NULLS FIRST/LAST qualifier can never use an index. file: [68fd9097] check-in: [07babb0f] user: dan branch: nulls-last, size: 160486
2019-08-09
01:59
Modify signature of sqlite3VdbeChangeOpcode() to accept int instead of u32. file: [8eeb9799] check-in: [68b7f2ac] user: mistachkin branch: trunk, size: 159853
01:11
Fix more compiler warnings. file: [701d026f] check-in: [1b85442b] user: drh branch: trunk, size: 159853
2019-08-08
15:24
Remove support for STAT3. The sqlite_stat3 tables are ignored, if they exist. STAT4 continues to work as it always has, and as it is a superset of STAT3 is the recommended replacement. file: [a262a279] check-in: [1e17ea2f] user: drh branch: omit-stat3, size: 159853
2019-07-26
20:54
Merge latest changes from trunk into this branch. file: [aa9950d1] check-in: [7f1e4e4b] user: dan branch: reuse-schema, size: 159838
2019-07-16
19:44
Add new assert() statements in an attempt to help static analyzers avoid false-positives. file: [ffcdaf1c] check-in: [9e664585] user: drh branch: trunk, size: 159767
2019-07-13
09:56
Merge latest trunk changes into this branch. file: [eb2b67dc] check-in: [86ab963c] user: dan branch: filter-clause, size: 159670
2019-07-12
15:15
Minor performance improvement in vdbeRecordCompareString(). file: [6e690cf7] check-in: [777fec84] user: dan branch: filter-clause, size: 159313
2019-07-11
19:22
Move the sqlite3VdbeSerialType() routine in-line in the OP_MakeRecord opcode. Optimizing compilers were doing this already. By doing it manually, we can omit some redundant tests and make the whole thing run a million cycles faster and use about 80 bytes less code space. file: [a2da4e67] check-in: [d837ab0d] user: drh branch: trunk, size: 159671
2019-07-08
21:32
Merge recent trunk enhancements into the reuse-schema branch. file: [b2c92139] check-in: [fae92fee] user: drh branch: reuse-schema, size: 159385
21:06
Merge recent trunk enhancements into the begin-concurrent branch. file: [b5d20a12] check-in: [7fff0803] user: drh branch: begin-concurrent, size: 159940
2019-07-02
20:10
Have ALTER TABLE detect and error out for the case where renaming a column changes a the interpretation of a double-quoted identifier in the database schema from an SQL literal to a column reference. file: [e078c888] check-in: [5dbb0734] user: dan branch: tkt9b78184b-alt, size: 159624
2019-05-30
00:46
Smaller and faster sqlite3IsNaN() implementation makes deserialization of floating point values much faster. file: [3a803d75] check-in: [ea748ede] user: drh branch: trunk, size: 159314
2019-05-24
13:04
Merge recent enhancements from trunk. file: [198ca785] check-in: [ff9f3e09] user: drh branch: reuse-schema, size: 159416
2019-05-21
16:32
Fix a problem in [b5ca442a] causing an assert() to fail in REINDEX commands. file: [afe8d785] check-in: [a3e77c77] user: dan branch: trunk, size: 159345
14:42
Use a statement journal for all CREATE INDEX statements in case an indexed exprsesion throws an exception when it is evaluated. Fix for [b5ca442a]. file: [32c003d7] check-in: [b8071d10] user: dan branch: trunk, size: 158966
2019-05-14
22:25
Merge all the latest trunk enhancements into the reuse-schema branch. file: [95cabb0e] check-in: [018f3199] user: drh branch: reuse-schema, size: 158918
21:51
Merge the latest trunk enhancements into begin-concurrent. file: [f51bda62] check-in: [5d3a6e18] user: drh branch: begin-concurrent, size: 159473
2019-05-09
17:10
Disable the optimization where a REAL value with no fractional part is stored as an INTEGER when the integer uses as much space as the real value it proposes to stand in for (8 bytes). This avoids corner cases of comparing integers against real values that are beyond the resolution of an IEEE 754 double. Fix for ticket [6c1d3febc00b22d457c78c2] file: [d444f4a3] check-in: [9b091527] user: drh branch: trunk, size: 158847
2019-05-07
19:44
Do not commit an "OR FAIL" statement that causes foriegn key constraint violations. file: [f9fb1f71] check-in: [659c551d] user: dan branch: trunk, size: 158448
2019-05-04
01:29
New testcase macros to ensure that MEM_IntReal is fully tested. file: [94f5bea5] check-in: [8b8ef445] user: drh branch: int-real, size: 158400
2019-05-02
21:36
Make MEM_IntReal a completely independent type, meaning a floating point value stored as an integer. This fixes a problem with arithmetic within arguments to string functions on indexes of expressions. But it is a big change and needs lots of new testcase() macros for MC/DC and so it is initially put on this branch. file: [326e0499] check-in: [dba836e3] user: drh branch: int-real, size: 157895
2019-04-26
17:20
An experimental interface for retrieving the estimated cost and estimated number of output rows for a query. file: [cf9159ea] check-in: [1b25fa10] user: drh branch: cost-est, size: 157976
2019-04-15
15:35
Merge recent changes from trunk into reuse-schema file: [793111f4] check-in: [5c6c9e7f] user: drh branch: reuse-schema, size: 157684
14:59
Merge the latest enhancements from trunk. file: [ded4c9c2] check-in: [7c328e88] user: drh branch: begin-concurrent, size: 158239
2019-04-13
14:07
Fixes for harmless compiler warnings. file: [f873b5c2] check-in: [c28c973a] user: drh branch: trunk, size: 157613
04:01
Enforce the SQLITE_LIMIT_COLUMN limit on virtual tables. file: [2b16b673] check-in: [0b6ae032] user: drh branch: trunk, size: 157605
2019-03-26
12:07
Merge recent enhancements from trunk. file: [8152a4f7] check-in: [774d0d52] user: drh branch: begin-concurrent, size: 158100
2019-03-20
16:03
Merge latest trunk changes into this branch. file: [5c792e54] check-in: [4cd20ca6] user: dan branch: reuse-schema, size: 157545
2019-03-15
16:17
Ensure that ALTER TABLE commands open statement transactions. Fix for [596d059a]. file: [7aa412e7] check-in: [0f2129f5] user: dan branch: trunk, size: 157474
2019-03-08
15:30
Merge all the latest enhancements from trunk. file: [c98e40e4] check-in: [667cce3d] user: drh branch: begin-concurrent-pnu, size: 158020
2019-02-05
19:51
Merge latest trunk into this branch. file: [2f4fefdf] check-in: [c089cc4f] user: dan branch: reuse-schema, size: 157465
2019-01-27
02:41
Window functions that can abort should indicate this, so that if they are used in DML statement, a statement journal will be used. file: [4fa28b32] check-in: [0ea05a0e] user: drh branch: trunk, size: 157394
2019-01-26
17:47
Fix "PRAGMA journal_mode" so that if it fails because there is a transaction open, it does not roll that transaction back. file: [2cda9db3] check-in: [9f39cb5b] user: dan branch: rollback-abort, size: 157923
16:34
Roll back the transaction if a write statement fails with OE_Abort but there is no open statement transaction. file: [69857972] check-in: [d536be69] user: dan branch: rollback-abort, size: 157509
2019-01-25
18:17
Fix harmless compiler warnings. file: [158abc9c] check-in: [3ff220ad] user: drh branch: trunk, size: 157407
2019-01-24
14:16
Change a integer variable in sqlite3VdbeRecordUnpack() to unsigned in order to avoid any possibility of an integer overflow. file: [11ded95e] check-in: [1b536f6f] user: drh branch: trunk, size: 157397
2019-01-22
02:34
Ensure that a key comparison does not read a collating sequence past the end of the KeyInfo, even if the key field of an index is corrupted by having a string in the last column instead of the ROWID. file: [f6cd3f53] check-in: [058a8006] user: drh branch: trunk, size: 157397
2019-01-14
13:32
When parsing a corrupt record using sqlite3VdbeRecordUnpack(), make sure that the resulting UnpackedRecord object is completely initialized, to avoid (harmless) MSAN warnings. file: [c0c3c082] check-in: [ddc3697e] user: drh branch: trunk, size: 157299
2019-01-12
21:30
Prevent unsigned 32-bit integer overflow from leading to a buffer overread inside of an assert(). The problem fixed here is no reachable in production code. file: [6e8cf4dd] check-in: [0f850a25] user: drh branch: trunk, size: 157034
2019-01-11
16:44
Improved detection of cell corruption in sqlite3VdbeRecordCompareWithSkip(). file: [eb444562] check-in: [fa47f4c6] user: drh branch: trunk, size: 157024
2019-01-02
16:08
Merge latest trunk changes into this branch. file: [272c0301] check-in: [5bf212f1] user: dan branch: begin-concurrent, size: 157658
2018-12-31
18:30
Merge enhancements and bug fixes from trunk. file: [b230f126] check-in: [9fb646f2] user: drh branch: reuse-subqueries, size: 157032
2018-12-29
14:23
Additional small performance increase and size reduction to the sqlite3VdbeMakeLabel() mechanism. file: [1b47c59c] check-in: [1bdee199] user: drh branch: trunk, size: 156665
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: [3fe9349a] check-in: [4a0929ac] user: drh branch: trunk, size: 156023
2018-12-28
21:32
Merge performance enhancements from trunk. file: [01631f90] check-in: [0f1b9ff9] user: drh branch: reuse-subqueries, size: 156174
20:48
Faster allocation of new sqlite3_stmt objects. file: [c5d6c0af] check-in: [891f1f72] user: drh branch: trunk, size: 155807
20:14
Move the nOpAlloc field from Parse into Vdbe to avoid an extra pointer deference on the fast path in sqlite3VdbeAddOp3(). file: [742fb6de] check-in: [8f10efc2] user: drh branch: trunk, size: 155502
19:23
Merge patches and enhancements from trunk. file: [409efe1b] check-in: [da53f3d3] user: drh branch: reuse-subqueries, size: 155915
17:45
Fix a problem causing the sqlite_master entry corresponding to a virtual table to be removed by a DROP TABLE even if the call to the vtabs xDestroy() method failed. file: [0d7b40bc] check-in: [0140f6db] user: dan branch: trunk, size: 155548
2018-12-27
17:11
Merge latest wal2 changes with this branch. file: [408562b4] check-in: [ea96001e] user: dan branch: begin-concurrent-wal2, size: 156146
2018-12-24
20:21
Improvements to EXPLAIN QUERY PLAN formatting. The MULTI-INDEX OR now shows a separate "INDEX" subtree for each index. SCALAR SUBQUERY entries provide a subquery number that is related back to the .selecttrace output. file: [dfbedc7b] check-in: [7153552b] user: drh branch: reuse-subqueries, size: 155757
18:10
Always include OP_Explain opcodes in the bytecode when SQLITE_DEBUG is enabled. file: [ed00c59d] check-in: [d8c1235c] user: drh branch: trunk, size: 155520
2018-12-15
20:59
Merge latest wal2 changes into this branch. file: [9f2a251e] check-in: [06bb80ee] user: dan branch: begin-concurrent-wal2, size: 155979
2018-12-14
20:20
Add the OP_ColumnsUsed opcode (when compiled with SQLITE_ENABLE_COLUMN_USED_MASK) as a hint to the b-tree layer as to which columns of a btree cursor will be used. (Backport from 3.8.11) file: [eda1c639] check-in: [b29e02f8] user: drh branch: branch-3.8.9, size: 133687
2018-12-10
20:01
Further refinements to the sqlite3_normalized_sql() interface. TH3 now gives 100% MC/DC on that interface. file: [f00d9b32] check-in: [c96bf6cc] user: drh branch: trunk, size: 155353
16:00
Refactor the sqlite3_normalized_sql() implementation. This is a work-in-progress. There are still issues. file: [c72fc601] check-in: [a4c890b0] user: drh branch: normalize-refactor, size: 155589
2018-12-07
16:32
Fix the sqlite3_normalized_sql() interface so that it renders double-quoted string literals as "?". file: [9a961766] check-in: [0d8e1504] user: drh branch: trunk, size: 155896
2018-12-06
20:18
Experimental changes to (optionally) allow double-quoted strings to be checked against known identifiers. file: [33f61089] check-in: [73a6b8c1] user: mistachkin branch: normalize_v4, size: 154493
17:06
When masking bits off of sqlite3.flags, make sure the mask is 64 bits in size so as not to accidentally mask of high-order bits. file: [d71429f7] check-in: [53d3b169] user: drh branch: trunk, size: 154482
2018-12-05
13:44
Merge enhancements from trunk, especially the enhanced sqlite3_normalized_sql() interface. file: [b3c364b1] check-in: [47b73f6b] user: drh branch: begin-concurrent, size: 155103
13:39
Enhance the sqlite3_normalize_sql() interface so that it works even if the prepared statement was not initially compiled using SQLITE_PREPARE_NORMALIZED. Enhance the ".trace" command in the CLI so that it is able to access the full scope of functionality provided by sqlite3_trace_v2() and in particular so that it is able to show normalized SQL output using the newly enhanced sqlite3_normalize_sql() interface. file: [8e2fe020] check-in: [7da617e9] user: drh branch: trunk, size: 154477
2018-11-26
07:21
Merge latest trunk changes into this branch. file: [51a6b2b7] check-in: [28a615a2] user: dan branch: begin-concurrent, size: 155100
2018-11-09
18:44
Merge latest trunk changes with this branch. file: [5e83d8a9] check-in: [ae88f8e1] user: dan branch: reuse-schema, size: 154545
2018-10-29
17:53
Add the sqlite3_normalized_sql() API. file: [f547901b] check-in: [592b66e8] user: mistachkin branch: normalized_sql, size: 154474
2018-10-08
18:58
Merge latest trunk changes into this branch. file: [40f4b3ca] check-in: [2ac72114] user: dan branch: reuse-schema, size: 154125
2018-10-01
13:54
Fix a potential crash that can occur while reading an index from a corrupt database file. The corruption is a record-header-size that is larger than 0x7fffffff. Problem detected by OSSFuzz against GDAL and reported to us (with a suggested fix) by Even Rouault. The test case is in TH3. file: [9fe7760a] check-in: [8ac2cdda] user: drh branch: trunk, size: 154054
2018-09-28
20:58
Merge latest trunk into this branch. file: [24cbf0ee] check-in: [86750c92] user: dan branch: begin-concurrent, size: 154623
2018-09-19
14:54
Reduce the size of Expr from 80 to 72 bytes moving the pRight field inside the "x" union. This is an incremental check-in that still has issues. file: [43ee5819] check-in: [147c61a6] user: drh branch: expr-simplify, size: 154005
2018-09-12
00:21
Fix a harmless compiler warning that arose from the ENABLE_CURSOR_HINTS fix of check-in [0af18674ca5b34e67e] file: [c3c39727] check-in: [f578e62a] user: drh branch: trunk, size: 153997
2018-09-01
20:23
Fix a problem with renaming a column in a table that has a temp trigger that references another attached database. file: [0a769638] check-in: [336b8a09] user: dan branch: alter-table-rename-column, size: 153995
2018-08-29
20:24
Also free up the MEM_RowSet bit in the Mem.flags field and have RowSet objects be destroyed using Mem.xDel. This change results in faster code. file: [1ee77344] check-in: [f48e9feb] user: drh branch: trunk, size: 154036
18:47
Free up the MEM_Frame bit in Mem.flags object. Store VdbeFrame objects as MEM_Blob with a special Mem.xDel pointer instead. file: [20da0273] check-in: [62db5fd4] user: drh branch: trunk, size: 154015
2018-08-21
12:16
Fix various harmless warnings generated by static analysis tools. file: [b64c6992] check-in: [a04a0ea9] user: drh branch: trunk, size: 153140
2018-08-14
15:12
Fix UPSERT so that it checks the target-constraint first and fires the DO UPDATE if that constraint is violated regardless of whether or not other constraints are in violation. This aligns SQLite behavior with what PostgreSQL does. Fix for ticket [908f001483982c43cdb476dfb590a1a]. file: [f03d4a19] check-in: [529fb55e] user: drh branch: trunk, size: 153156
2018-08-04
16:54
Remove more column-cache residue: The OP_SetColTab and OP_VerifyColTab opcodes and the associated SQLITE_DEBUG_COLUMNCACHE logic. file: [b610cef3] check-in: [80236e81] user: drh branch: omit-column-cache, size: 153581
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: [3872c295] check-in: [3f5f60cd] user: drh branch: omit-column-cache, size: 153644
2018-07-24
22:02
Do not abort running queries due to a CREATE INDEX statement. Allow them to run to completion before being reprepared. Fix for ticket [c694113e50321afdf9]. file: [1265a362] check-in: [2bd59333] user: drh branch: trunk, size: 153898
2018-07-10
15:45
Merge latest trunk changes into this branch. file: [82a91231] check-in: [e9a3e864] user: dan branch: begin-concurrent, size: 154137
2018-06-12
13:52
Improvements to SCopy correctness tracking when SQLITE_DEBUG is enabled. file: [c2d65c76] check-in: [b2973f23] user: drh branch: trunk, size: 153511
2018-06-11
17:35
Add the OP_SetTabCol and OP_VerifyTabCol opcodes, only when compiling with SQLITE_DEBUG, to do run-time verification of the column cache. file: [0e7af861] check-in: [b37614a3] user: drh branch: trunk, size: 153448
13:10
Strengthen the sqlite3VdbeMemAboutToChange() run-time verification mechanism to better detect missed calls to AboutToChange(). file: [ea0b7821] check-in: [793e9422] user: drh branch: trunk, size: 153444
2018-06-07
17:32
Remove the NextIfOpen and PrevIfOpen opcodes which are no longer needed when the IN-early-out optimization is working. file: [daecbbef] check-in: [439c8162] user: drh branch: multikey-opt-idea, size: 153451
2018-06-06
20:55
More space and performance enhancements to sqlite3VdbeRecordCompare(). file: [adbd21d9] check-in: [83a60ff0] user: drh branch: trunk, size: 153507
20:29
Small performance optimization in sqlite3VdbeRecordCompareWithSkip() for the common case where the comparison is equal. file: [20c12c69] check-in: [1e616e25] user: drh branch: trunk, size: 153478
17:03
Merge changes from trunk, including all the 3.24.0 changes plus some later enhancements. file: [a41de57f] check-in: [d7299bfe] user: drh branch: begin-concurrent, size: 154089
2018-05-28
17:31
When compiling with SQLITE_DEBUG, add run-time checks to ensure that no statement aborts unless either there have been no writes or else there is a statement journal. file: [b00d3580] check-in: [5a4542db] user: drh branch: stmt-journal-testing, size: 153463
2018-05-25
03:46
Add SQLITE_LOCKED_VTAB and SQLITE_CORRUPT_SEQUENCE to sqlite3ErrName(). Also, use SQLITE_CORRUPT_BKPT in one more place. file: [e4179c8d] check-in: [eac8888d] user: mistachkin branch: errCodes, size: 152557
2018-05-18
14:19
Remove incorrect NEVER() macro added by the previous check-in. file: [3b0650db] check-in: [3d662511] user: drh branch: int-float-compare, size: 152552
13:39
Improvements to the sqlite3IntFloatCompare() routine for systems that lack the long double type. file: [8442dd6b] check-in: [ea6a03a8] user: drh branch: int-float-compare, size: 152559
2018-05-15
11:45
Merge latest trunk changes with this branch. file: [22af0c48] check-in: [ae86cf60] user: dan branch: begin-concurrent, size: 153240
2018-05-09
13:46
Make the internal dynamic string interface available to extensions using the new sqlite3_str object and its associated methods. This is mostly just a renaming of internal objects and methods to use external names, through there are a few small wrapper functions. file: [f1cb5ae6] check-in: [87f261f0] user: drh branch: trunk, size: 152614
2018-05-02
00:33
Begin reengineering the EXPLAIN QUERY PLAN function to provide more intuitive output. file: [58129ae4] check-in: [70b48a79] user: drh branch: rework-EQP, size: 152500
2018-04-26
17:54
Merge latest changes from trunk. Including the "ORDER BY ... LIMIT" optimization. file: [8160881d] check-in: [d8ae7ba0] user: dan branch: begin-concurrent, size: 152205
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: [b82ca213] check-in: [0a514e62] user: drh branch: trunk, size: 151579
2018-04-24
19:21
Merge latest trunk changes into this branch. file: [b9be9ba8] check-in: [b27bd799] user: dan branch: begin-concurrent, size: 151991
13:07
Enhance the CLI to render EXPLAIN QUERY PLAN using an ASCII-art graph. This works with ".eqp" modes and when the query begins with exactly "EXPLAIN QUERY PLAN". To see the original output format, add extra space characters in between words of the initial "EXPLAIN QUERY PLAN". file: [944bae52] check-in: [f53716ee] user: drh branch: trunk, size: 151365
2018-04-18
01:34
Add new testcase() macros and fix a bug that was revealed when trying to cover all the new test cases. file: [0fdf9785] check-in: [266a99f7] user: drh branch: upsert, size: 151092
2018-04-17
20:09
Added a comment on the assert() added to the previous check-in. file: [1edb8a07] check-in: [542547c1] user: drh branch: upsert, size: 150667
20:06
Fixes to the logic for constraint check reordering during upsert. Improved comments on constraint check bytecode. Add an assert that prevents the same label from being resolved more than once. file: [42c40f64] check-in: [1ddbb0ff] user: drh branch: upsert, size: 150628
19:29
During PRAGMA vdbe_addoptrace=ON, show calls to sqlite3VdbeResolveLabel() in the debugging output. file: [38517c96] check-in: [9ff07a06] user: drh branch: upsert, size: 150594
2018-03-28
15:41
Update this branch with latest trunk changes. file: [41157298] check-in: [df52e89f] user: dan branch: server-process-edition, size: 150554
2018-03-02
17:40
Merge latest trunk changes into this branch. file: [db9d38ca] check-in: [36801eff] user: dan branch: begin-concurrent, size: 151086
2018-01-13
14:28
Fully initialize the Mem object for serial-type 10, in case such a serial-type is found in a corrupt database file. file: [2756ac68] check-in: [bd70a07d] user: drh branch: trunk, size: 150460
2018-01-12
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: [fc124962] check-in: [8b7be15e] user: drh branch: sqlite3_value_nochange, size: 150416
16:44
Experimental change to include changes made to the sqlite_stat1 table in changesets generated by the sessions module. sqlite_stat1 entries in such changesets are ignored by legacy clients. file: [7d635c30] check-in: [bd46c442] user: dan branch: sessions-stat1, size: 150295
2017-12-21
18:23
Change the name of SQLITE_DBCONFIG_FULL_EQP to be SQLITE_DBCONFIG_TRIGGER_EQP (which we can do without breaking compatibility because the former name has not yet appeared in an official release) and streamline its implementation. file: [7ae48b18] check-in: [fffc7685] user: drh branch: trunk, size: 150253
2017-11-29
16:16
Merge latest trunk changes into this branch. file: [cf474d29] check-in: [373fa21b] user: dan branch: schemalint, size: 150207
2017-11-17
08:20
Avoid creating a master journal if all or all but one of the databases in the transaction is a temp file. file: [b02a1f84] check-in: [355d1232] user: dan branch: master-journal-temp-files, size: 149902
2017-11-06
20:02
Merge latest trunk changes into this branch. file: [e9aa37f7] check-in: [7f217eda] user: dan branch: begin-concurrent, size: 150487
2017-10-31
03:40
Remove unnecessary NEVER() and ALWAYS() conditionals. file: [9521a936] check-in: [1c80c75d] user: drh branch: trunk, size: 149861
2017-10-12
20:24
Fix the EXPLAIN processing so that it returns SQLITE_ERROR on an OOM, as it should. file: [2b10f70d] check-in: [4ec63ef2] user: drh branch: schemalint, size: 150176
2017-10-11
20:26
Merge latest trunk changes with this branch. file: [32530e6e] check-in: [2719cf5c] user: dan branch: schemalint, size: 150125
20:10
Change some internal details to bring this branch closer to the code on trunk. file: [4f54ba67] check-in: [58e42cfd] user: dan branch: schemalint, size: 148077
2017-10-07
23:35
Revise variable declaration moved in the previous check-in so sqlite3VdbeReset() is consistent with sqlite3VdbeRewind(). file: [c423065d] check-in: [63d1b425] user: mistachkin branch: trunk, size: 149871
23:31
Fix C99-style variable declaration issue seen with older versions of MSVC. file: [15368cf8] check-in: [14b181e8] user: mistachkin branch: trunk, size: 149853
2017-09-22
10:49
Merge latest trunk changes into this branch. file: [09f1fadf] check-in: [307b802e] user: dan branch: begin-concurrent, size: 150451
2017-09-21
00:49
Fix the rendering of the P4_INTARRAY argument to the OP_IntegrityCk opcode in the output of EXPLAIN. file: [831a77aa] check-in: [adc12c83] user: drh branch: trunk, size: 149825
2017-09-16
20:58
Simplify the sqlite3VdbeGet() routine. Smaller, faster, and easier to maintain. file: [3be977a0] check-in: [5dbb255a] user: drh branch: trunk, size: 149824
2017-09-13
18:38
Experimental sqlite3_stmt_retryable() interface. file: [0b2b1942] check-in: [ebada072] user: drh branch: sqlite3_stmt_retryable, size: 149857
2017-09-09
22:46
Simplification and performance improvement to sqlite3_reset(). file: [41d90002] check-in: [b6425d01] user: drh branch: improved-integrity-check, size: 149764
2017-08-28
17:19
Merge recent enhancements from trunk. file: [410ba18e] check-in: [d53108e7] user: drh branch: begin-concurrent, size: 150595
2017-08-18
14:34
Combine the OP_CreateTable and OP_CreateIndex opcodes of the bytecode engine into a single OP_CreateBtree opcode. This simplifies the implementation and makes the bytecode programs clearer. file: [2dff8186] check-in: [eb1202b5] user: drh branch: trunk, size: 149969
2017-08-16
19:20
Avoid a test for CURTYPE_BTREE in sqlite3VdbeCursorMoveto() in order to reduce the size and improve the performance of OP_Column. file: [1f15018e] check-in: [f078deb2] user: drh branch: trunk, size: 149922
2017-08-11
19:16
Merge the latest enhancements from trunk. file: [8d4a286c] check-in: [47e71695] user: drh branch: begin-concurrent, size: 150541
2017-08-09
20:35
Add experimental sqlite3_open_v2() flag SQLITE_OPEN_REUSE_SCHEMA. For sharing identical in-memory schema objects between connections. file: [c30be9a7] check-in: [a6256980] user: dan branch: reuse-schema, size: 149986
2017-08-07
14:15
Update this branch with latest trunk changes. file: [4d9e0e86] check-in: [17bc7ded] user: dan branch: server-process-edition, size: 150009
2017-08-02
22:43
In the KeyInfo object, refactor the nField and nXField elements into nKeyField and nAllField, which are more useful and run a little faster. file: [1bef372f] check-in: [aea5990e] user: drh branch: trunk, size: 149915
11:04
Rearrange integer token values in the parser and logic in the resolveP2Values() routine for a small size reduction and performance increase. file: [5feca7a5] check-in: [1cad2926] user: drh branch: trunk, size: 149972
02:46
Faster implementation of resolveP2Values(). file: [dc26b755] check-in: [82e46fe0] user: drh branch: trunk, size: 148955
2017-08-01
13:54
Merge recent enhancements from trunk. file: [849ecc41] check-in: [aafe1fec] user: drh branch: begin-concurrent, size: 149581
2017-07-29
17:10
Merge latest trunk changes with this branch. file: [715f5d9e] check-in: [b42c8779] user: dan branch: server-process-edition, size: 149049
2017-07-27
03:48
Add a destructor argument to sqlite3_bind_pointer() and sqlite3_result_pointer(). file: [986c5cae] check-in: [3d9e841f] user: drh branch: pointer-with-destructor, size: 148985
2017-07-25
01:34
Fix a bug in the deterministic date/time function logic that can only appear with STAT3 or STAT4. file: [3fe68bad] check-in: [1ca707a4] user: drh branch: trunk, size: 148955
2017-07-24
19:43
Update this branch with latest changes from trunk. file: [36318c63] check-in: [d0719ad7] user: dan branch: server-process-edition, size: 148973
2017-07-20
17:47
Merge all the latest trunk enhancements. file: [ca3e9b23] check-in: [213c61cb] user: drh branch: begin-concurrent, size: 149505
13:17
Combine the Parse.ckBase and Parse.iSelfTab fields into just Parse.iSelfTab. This fixes a problem with date/time functions in check-constraints. Add some test cases for date/time functions in index expressions and check constraints. file: [42e215cc] check-in: [22eda098] user: drh branch: index-on-date-func, size: 148879
2017-07-19
19:48
Allow indexes to be created on date/time functions as long as the 'now' date and the 'localtime' and 'utc' modifiers are not used. file: [23a02ba4] check-in: [0a5e1c04] user: drh branch: index-on-date-func, size: 148845
18:54
Merge latest trunk changes with this branch. file: [1fe7292c] check-in: [be0df0a6] user: dan branch: server-process-edition, size: 148353
2017-07-12
20:43
Smaller and faster implementation for vdbeFreeOpArray() and freeP4(). file: [518d1cf6] check-in: [0c805935] user: drh branch: trunk, size: 148259
2017-07-07
16:40
Merge latest trunk changes with this branch. file: [0b78090f] check-in: [216c757f] user: dan branch: server-process-edition, size: 148336
16:00
Enhance the sqlite3VdbeMultiLoad() interface to automatically generate the OP_ResultRow opcode on PRAGMA implementations, for a small reduction in the library footprint. file: [6f01fe8a] check-in: [c46f0f07] user: drh branch: trunk, size: 148242
2017-07-05
16:20
Make use of covering indexes in the OR optimization. file: [c562ac4e] check-in: [fcbd6abd] user: drh branch: branch-3.8.9, size: 133109
2017-06-29
15:24
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one bit in that argument. Use the new option in FTS3, FTS5, and RTREE. file: [32ff5e8a] check-in: [03977248] user: drh branch: trunk, size: 148023
12:49
Add the SQLITE_STMTSTATUS_REPREPARE and SQLITE_STMTSTATUS_RUN options to sqlite3_stmt_status(). Use this for two new columns in the stmts virtual table. file: [09aaf89e] check-in: [b0b0c8f8] user: drh branch: stmts-vtab, size: 148034
2017-06-28
15:56
Incorporate recent trunk changes. file: [69689a77] check-in: [62b8269b] user: drh branch: prepare_v3, size: 147916
2017-06-26
14:46
Make sure sqlite3VdbeSetVarmask() is never invoked when QPSG is enabled. file: [d7c7a57f] check-in: [ebcfa73e] user: drh branch: enable-QPSG, size: 147926
13:57
Add the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner stability guarantee. This involves refactoring the sqlite3.flags bitvector to carve out a free bit to use. file: [c03e96a2] check-in: [7076e828] user: drh branch: enable-QPSG, size: 147863
2017-06-01
00:54
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one bit in that argument. file: [91645995] check-in: [4a25c588] user: drh branch: prepare_v3, size: 147812
2017-05-31
11:24
Very small performance increase in sqlite3VdbeSetNumCols(). file: [bc9b3228] check-in: [8885b446] user: drh branch: trunk, size: 147822
2017-05-29
22:44
More efficient error handling and reset in the binding mechanism. file: [4ff778d1] check-in: [9a3e3b34] user: drh branch: trunk, size: 147822
2017-05-22
08:04
Fix a case where NULL was being passed to memcmp() following an OOM. This is probably not a real problem, as the number-of-bytes parameter was passed 0 in this case, but it was causing a santizer complaint. file: [8416e4e5] check-in: [3ea2bad2] user: dan branch: trunk, size: 147800
2017-05-15
17:56
Merge changes from trunk. file: [73f10e29] check-in: [6e0f64ab] user: drh branch: schemalint, size: 148093
17:34
Merge the latest changes from trunk. file: [5dfd5adf] check-in: [14ea8400] user: drh branch: begin-concurrent, size: 148449
2017-05-11
15:20
Negative N values in sqlite3_get_auxdata() and sqlite3_set_auxdata() can be used to access an auxiliary data cache over all functions in a single prepared statement. file: [01dcf59b] check-in: [ff530675] user: drh branch: auxdata-cache, size: 147823
2017-05-10
19:42
Rename fields of the internal AuxData object to make them unique and easier to search for. file: [436a9031] check-in: [2be9850c] user: drh branch: trunk, size: 147794
2017-05-06
16:04
Update this branch with latest trunk changes. file: [ef484bc2] check-in: [ed6bad67] user: dan branch: server-edition, size: 147853
2017-05-03
13:05
Fix a harmless compiler warning on Windows. file: [dd410690] check-in: [593e5dd0] user: drh branch: schemalint, size: 148029
2017-05-02
19:45
Merge the latest enhancements from trunk. file: [98ced78b] check-in: [a7dcf6a7] user: drh branch: schemalint, size: 148025
2017-05-01
16:37
Minor bug fixes and performance enhancement. file: [b4999c74] check-in: [b2aae559] user: drh branch: materialized-view-reuse, size: 147759
15:15
Initial implementation of an optimization that attempts to reuse the same materialization of a view on a self-join of the view. file: [bb99698c] check-in: [478c34b9] user: drh branch: materialized-view-reuse, size: 147760
2017-04-26
20:45
Experimental implementation of pessimistic page-level locking based on rollback mode. file: [3cf14d04] check-in: [64ecf7c7] user: dan branch: server-edition, size: 147830
2017-04-17
17:03
Add support for analyzing trigger programs to the sqlite3_expert code. file: [526b617a] check-in: [159e8022] user: dan branch: schemalint, size: 148002
2017-04-10
20:51
Smaller and faster vdbeFreeOpArray() file: [6b3f6ce9] check-in: [e052436d] user: drh branch: trunk, size: 147736
2017-04-05
12:39
Split off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where we know that the argument to be freed is never NULL. file: [0ecacf8c] check-in: [ad90e8bb] user: drh branch: trunk, size: 147733
2017-04-01
19:45
Remove an unnecessary clearing of the Vdbe.iCurrentTime value. file: [514eb174] check-in: [fcd2acdd] user: drh branch: trunk, size: 147716
2017-03-24
15:09
Merge all recent enhancements from trunk. file: [0a2d70e7] check-in: [fd5676fe] user: drh branch: begin-concurrent, size: 148365
2017-03-17
22:50
Begin enforcing the SQLITE_LIMIT_VDBE_OP. The documentation warned that this day might come. file: [ecd04686] check-in: [ef591461] user: drh branch: trunk, size: 147739
2017-03-03
21:51
If a reprepare is needed after binding to a variable with a number larger than 32, set only the high-order bit of the Vdbe.expmask rather than setting all bits. This could potentially result in fewer false-positive reprepares. file: [57361f2e] check-in: [45797fee] user: drh branch: trunk, size: 147566
2017-03-02
13:13
Make sure the Vdbe.expmask value is set correctly in sqlite3VdbeSwap(). This fixes a problem introduced by [a8fd7052]. file: [b632f915] check-in: [29f54b89] user: drh branch: trunk, size: 147564
2017-02-23
16:30
Save a few bytes and a few cycles by setting Vdbe.expmask to zero for statements prepared using legacy interface sqlite3_prepare(). file: [031422c6] check-in: [a8fd7052] user: dan branch: trunk, size: 147535
2017-02-21
21:24
In sqlite3VdbeHalt(), return as soon as possible if Vdbe.magic!=VDBE_MAGIC_RUN. This makes sqlite3_reset() slightly faster in some cases. file: [2f48204a] check-in: [80adc0cb] user: dan branch: trunk, size: 147498
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: [fb1d5bfb] check-in: [c1adf959] user: dan branch: sort-column-opcodes, size: 147784
2017-02-13
13:35
Change all legacy instances of "#if SQLITE_DEBUG" to "#ifdef SQLITE_DEBUG" for consistency. file: [4122458d] check-in: [670f10b2] user: drh branch: trunk, size: 147498
2017-01-30
19:44
Experimental change to invoke the preupdate hook when WITHOUT ROWID tables are written. file: [b9a36e53] check-in: [856f8604] user: dan branch: preupdate-without-rowid, size: 147492
2017-01-27
16:39
Merge all recent trunk enhancements into the apple-osx branch. file: [57a43a29] check-in: [0e14fe1b] user: drh branch: apple-osx, size: 147864
2017-01-26
17:11
Performance optimization in sqlite3VdbeCloseStatement(). file: [6847b02a] check-in: [1e96e5ec] user: drh branch: trunk, size: 147369
2017-01-25
17:44
Fix a problem with the pre-update hook on this branch. file: [7c19b789] check-in: [6fc4fbfa] user: dan branch: trim-nulls, size: 147604
14:58
Experimental enhancement to automatically trim NULL values from the end of records, for a reduced disk footprint. This change also involves increasing the P5 operand from 8 to 16 bits. file: [8a244674] check-in: [118ded40] user: drh branch: trim-nulls, size: 147539
2017-01-16
11:54
An example showing how to improve performance of sqlite3VdbeSerialPut() using the GCC intrinsic function __builtin_bswap64(). file: [54442bff] check-in: [e42ed9b4] user: drh branch: builtin-bswap64, size: 147400
2017-01-09
06:33
Upgrade this branch to 3.16 plus the various fixes that appeared after its release. file: [d1e423b8] check-in: [d0e212d0] user: dan branch: begin-concurrent, size: 148164
2017-01-05
19:32
Ensure that sqlite3_column_count() returns 0 for the "set" mode of "get/set" PRAGMA statements that do not return a value in that case (e.g. page_size, cache_size, auto_vacuum). file: [35c9a990] check-in: [5c05d8ec] user: dan branch: pragma-columncount-fix, size: 147538
2016-12-23
13:30
Fix the VList object so that it actually works. file: [12919c5a] check-in: [9dcd8569] user: drh branch: VList, size: 147043
03:59
Use the VList object to replace Parse.azVar for tracking the mapping between SQL parameter names and parameter numbers. There is a performance improvement, though there are still a few hiccups in the current code. file: [1e284080] check-in: [68ecafa1] user: drh branch: VList, size: 147025
2016-12-21
19:45
Simplifications to the way UnpackedRecord objects are allocated. Smaller and faster code that also fixes a subtle (currently unreachable) bug. file: [7f67112c] check-in: [f7ab01f2] user: drh branch: trunk, size: 147135
2016-12-10
12:58
Reorder the fields in the VdbeCursor object so that those that need to be bulk zeroed on allocation are grouped at the beginning, and the memset() only runs over those fields that really need it. file: [f5edc890] check-in: [8165f88b] user: drh branch: trunk, size: 147828
2016-12-07
21:35
Add the sqlite3VdbeAppendP4() method for adding P4 content to the most recently coded instruction. file: [be0797ca] check-in: [28883e8f] user: drh branch: trunk, size: 147825
20:22
The use P4_DYNAMIC in place of the P4_MPRINTF operand type. file: [8378658e] check-in: [3954f837] user: drh branch: trunk, size: 147117
20:09
Performance optimization for sqlite3VdbeAddOp4(). file: [3afb187a] check-in: [04716c90] user: drh branch: trunk, size: 147209
2016-11-25
19:18
Refactor the sqlite3BtreeKey() and sqlite3BtreeData() internal interfaces into sqlite3BtreePayload() and sqlite3BtreePayloadChecked(), respectively. This is a continuation of the optimization started by check-in [2d831074cf]. The result is a slightly smaller and faster binary. file: [50a8caa4] check-in: [49ebc219] user: drh branch: trunk, size: 147157
2016-11-23
14:19
Correctly display the names of SQL functions in the VDBE_PROFILE output. file: [c0adf6e1] check-in: [161192f1] user: drh branch: trunk, size: 147163
2016-11-10
21:19
Break up the sqlite3BtreeMovetoUnpacked() routine into an eponymous routine and sqlite3BtreeMovetoIntkey(). Each routine specializes in a single kind of btree. file: [ba211189] check-in: [9a64a4f2] user: drh branch: split-moveto, size: 147127
2016-10-21
21:21
In the sessions module, avoid recording a change if an UPDATE statement overwrites a column with REAL affinity containing an integer value with the same value. file: [52d9b840] check-in: [b861328a] user: dan branch: sessions-fix, size: 147132
2016-10-01
19:32
Remove an unnecessary memset() call. file: [7229203e] check-in: [a76bff74] user: drh branch: trunk, size: 147140
19:21
Use sqlite3DbMallocRawNN() where appropriate, instead of sqlite3DbMallocRaw(). file: [a771f17c] check-in: [54a449a4] user: drh branch: trunk, size: 147184
16:53
Make sure deleting an unused prepared statement does not reference uninitialized fields in the structure. file: [5da1f049] check-in: [7983eef0] user: drh branch: trunk, size: 147182
00:37
Avoid unnecessary zeroing of fields in the Vdbe object when it is allocated. file: [4c0678a2] check-in: [1e21bbe8] user: drh branch: trunk, size: 147176
2016-09-30
20:22
Fix the Parse.aColCache column cache so that all of the valid entries are in the first Parse.nColCache slots. file: [5f97a1ae] check-in: [60285020] user: drh branch: trunk, size: 146990
17:46
Avoid unnecessary Mem initializations when generating a new sqlite3_stmt object. file: [240fecf1] check-in: [47ae1cda] user: drh branch: trunk, size: 147056
2016-09-29
20:28
Small size and performance optimization to sqlite3VdbeChangeP5(). file: [041dd9dd] check-in: [3c93c8f5] user: drh branch: trunk, size: 146799
19:50
Remove the peep-hole optimization of removing OP_Close opcodes that come before OP_Halt, as the extra work of removing those opcodes uses more cycles than just running them. file: [2fc9c590] check-in: [984a96d7] user: drh branch: trunk, size: 146766
2016-09-20
01:19
Avoid unnecessary calls to ExpandBlob() for smaller and faster code. file: [b9772e41] check-in: [5e196fd1] user: drh branch: trunk, size: 146854
2016-09-18
16:08
Revise the implementation of OP_Once so that it is smaller, faster, and uses less memory. This also fixes an obscure bug introduced 3 days ago by check-in [5990a1bdb4a073]. file: [66054df3] check-in: [6bf5ba10] user: drh branch: trunk, size: 146589
2016-09-15
00:32
Slight size reduction and performance increase in sqlite3VdbeHalt(). file: [12831f89] check-in: [5990a1bd] user: drh branch: trunk, size: 147014
00:04
Optimization to vdbeRecordCompareInt() makes it slightly smaller and faster. file: [4fbd4f52] check-in: [5a2a7712] user: drh branch: trunk, size: 146973
2016-09-09
19:33
Performance improvements to the comparison operators in the bytecode engine. file: [230b6826] check-in: [37803b19] user: drh branch: trunk, size: 146968
2016-08-24
21:24
Improved extended comments of comparison operators when the SQLITE_STOREP2 flags is set on P5. No changes to non-debug code. file: [83458783] check-in: [bbc1b016] user: drh branch: rowvalue, size: 146016
2016-08-11
19:12
Merge version 3.14 plus some subsequent patches (including the page-cache performance patch) from trunk. file: [e4656811] check-in: [d9f8918c] user: drh branch: begin-concurrent, size: 146344
2016-08-04
14:08
Add extra logging calls to this branch. file: [e755d2a3] check-in: [491f1ef3] user: dan branch: debug, size: 128791
2016-07-23
02:07
Add requirements marks to the sqlite3_trace_v2() interface documentation. file: [a32d79ae] check-in: [ebd388e9] user: drh branch: sqlite3_trace_v2, size: 145718
00:43
Fix sqlite3VdbeExpandSql() so that it handles OOMs by always returning NULL. file: [8557563e] check-in: [5a027fe4] user: drh branch: sqlite3_trace_v2, size: 146578
2016-07-22
20:45
Be sure to hold the database connection mutex while calling sqlite3VdbeExpand() from within sqlite3_expanded_sql(). file: [7a09b945] check-in: [527b5ba6] user: drh branch: sqlite3_trace_v2, size: 146547
2016-07-15
10:01
The sqlite3_expanded_sql() function compiles, but always returns NULL, when the SQLITE_OMIT_TRACE compile-time option is used. file: [23df1e66] check-in: [53c25ebe] user: drh branch: sqlite3_trace_v2, size: 146453
2016-07-14
09:22
Fix copy/paste typo in the new sqlite3_expanded_sql() function. file: [08a459b6] check-in: [e7d18c70] user: mistachkin branch: sqlite3_trace_v2, size: 146403
01:09
Add the sqlite3_expanded_sql() interface. Refinements to the sqlite3_trace_v2() interface to make it more useful. file: [6083ff39] check-in: [99ee7ee5] user: drh branch: sqlite3_trace_v2, size: 146403
2016-06-04
20:37
Change the sqlite3BtreeKeySize() interface into sqlite3BtreeIntegerKey() and make it only work for table btrees. Change sqlite3BtreeDataSize() into sqlite3BtreePayloadSize() and make it work for all btrees. Combine sqlite3BtreeDataFetch() and sqlite3BtreeKeyFetch() into a single sqlite3BtreePayloadFetch() routine. These changes seem to make the b-tree interface more rational and they reduce both binary size and CPU usage. file: [c90275b0] check-in: [bef35e18] user: drh branch: btree-refactor, size: 145881
2016-05-20
15:53
Performance optimization and size reduction on the freeP4() routine. file: [1d6b9a97] check-in: [4dc56e86] user: drh branch: trunk, size: 146064
2016-04-20
12:16
Merge all recent enhancements from trunk. file: [5234052c] check-in: [1f709fbf] user: drh branch: begin-concurrent, size: 146557
2016-04-11
16:35
Rename the OP_MX_JUMP macro to SQLITE_MX_JUMP_OPCODE to avoid confusing the opcode name generator. file: [ace1875d] check-in: [e554a4c3] user: drh branch: trunk, size: 145931
13:36
Remove the VdbeOp.opflags field and its associated initialization overhead. Update mkopcodeh.tcl to reorder opcode numbers to help the resolveP2Values() routine run faster. file: [b0bd7066] check-in: [099478fa] user: drh branch: trunk, size: 145909
2016-04-07
14:05
Instead of just commenting out the unneeded code in the previous check-in, remove it completely. file: [749b2a34] check-in: [8415d484] user: drh branch: trunk, size: 145217
14:01
Remove an unnecessary test for a NULL pointer in freeP4(). file: [a61e3970] check-in: [e84e88e3] user: drh branch: trunk, size: 145325
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: [fa06ba54] check-in: [5ab46d76] user: drh branch: sessions, size: 145321
2016-03-28
14:57
Open a statement transaction for "CREATE VIRTUAL TABLE" statements in order to ensure that if the xCreate() call fails, changes made to the sqlite_master and possibly other tables are rolled back. file: [12936eac] check-in: [d0a3853b] user: dan branch: vcreate-stmt, size: 142554
2016-03-21
15:54
Merge all recent changes from trunk. file: [8bf5783f] check-in: [8ee7d346] user: drh branch: begin-concurrent, size: 143097
15:32
Merge 3.12.0 beta changes from trunk. file: [03b2a622] check-in: [3296a0ce] user: drh branch: sessions, size: 145150
00:30
Remove an unreachable branch. Improvements to comments. file: [c8dd3e4e] check-in: [c5677ecd] user: drh branch: zero-base-aMem, size: 142471
2016-03-19
23:32
Change the Vdbe.aMem array so that it is zero-based instead of one-based. file: [4a38b9f9] check-in: [e07b0c47] user: drh branch: zero-base-aMem, size: 142727
2016-03-16
20:44
Some pragmas can be reused without an automatic reprepare. file: [a930f913] check-in: [db1ce7e1] user: drh branch: reusable-pragma, size: 142716
19:34
Merge the latest enhancements from trunk. file: [1e45699b] check-in: [a7978ab6] user: drh branch: begin-concurrent, size: 143215
2016-02-25
18:54
Merge all the latest changes from trunk. file: [325dcf1b] check-in: [b8659004] user: drh branch: sessions, size: 145268
2016-02-22
23:44
Remove code not needed now that synchronous=OFF database files no longer trigger the use of a master journal. file: [2c15cf88] check-in: [aa9f4c62] user: drh branch: trunk, size: 142589
16:04
Always use the sqlite3VdbeDeleteAuxdata() routine for clearing auxdata on function parameter, rather than having a separate deleteAuxdataFromFrame() for doing the job for trigger frames. file: [9583c5c0] check-in: [64386fa3] user: drh branch: trunk, size: 142729
14:57
Avoid creating a master journal unless two or more databases in the transaction can actually benefit from that master journal. file: [51aaf15e] check-in: [3ed18906] user: drh branch: trunk, size: 143036
2016-02-19
18:54
Use a separate list of aux-data structures for each trigger program at the VDBE level. Fix for [dc9b1c91]. file: [ec9a4d93] check-in: [c4295725] user: dan branch: trunk, size: 142276
2016-02-15
17:44
Merge version 3.11.0 file: [7a77e8be] check-in: [c393ddc7] user: drh branch: begin-concurrent, size: 142321
2016-02-13
23:43
Enhance ability to debug out-of-memory errors. file: [3580de03] check-in: [6a9c4a3e] user: mistachkin branch: noMemBkpt, size: 141806
2016-02-09
15:44
Merge enhancements and fixes from trunk. file: [520bf491] check-in: [f040a5bb] user: drh branch: sessions, size: 144450
02:12
Make sure every co-routines has its own set of temporary registers and does not share temporaries, since a co-routine might expect the content of a temporary register to be preserved across an OP_Yield. Proposed fix for ticket [d06a25c84454a]. file: [deae5d3b] check-in: [ca72be86] user: drh branch: trunk, size: 141771
2016-02-05
14:34
Merge PRAGMA synchronous=EXTRA and OOM performance enhancements from trunk. file: [4f40ac15] check-in: [332c8036] user: drh branch: begin-concurrent, size: 141794
14:15
Merge enhancements from trunk. file: [456d0673] check-in: [a533608c] user: drh branch: sessions, size: 143923
13:38
Add the slightly faster sqlite3DbMallocRawNN(db,n) routine for the majority cases where db is guaranteed to be not NULL. file: [49b53628] check-in: [0a802e96] user: drh branch: oom-handling, size: 141244
02:42
Further performance improvements that fall out of the mallocFailed changes. file: [77746152] check-in: [d94416dd] user: drh branch: oom-handling, size: 141242
01:55
Improvements to the way that OOM errors are processed. file: [0e66330a] check-in: [c3ef0347] user: drh branch: oom-handling, size: 141248
2016-02-04
02:34
Add and use the sqlite3VdbeZeroRegister() interface for coding the common operation of writing zero into a register. file: [fdfae9e3] check-in: [1c8d3001] user: drh branch: zero-register, size: 141502
2016-02-03
01:55
Enhance the internal sqlite3VdbeAddOpList() interface to automatically update jump destinations. Use this feature to simplify the AUTOINCREMENT code generator. file: [23b38b44] check-in: [ae8b9d2e] user: drh branch: trunk, size: 141355
2016-02-02
02:53
Merge recent enhancements from trunk. file: [f2afda3d] check-in: [347f6a80] user: drh branch: begin-concurrent, size: 141648
02:22
Merge all recent enhancements from trunk. file: [e41d4948] check-in: [f3f92001] user: drh branch: sessions, size: 143777
2016-02-01
17:20
Number VDBE opcodes starting with 0 instead of 1, as this obviates the lower-bound test on "switch(opcode){...}", making the code smaller and faster. file: [f0e7cfa0] check-in: [4c9222f7] user: drh branch: trunk, size: 141098
13:21
Minor simplification to the OP_AutoCommit opcode. Fix some code comments related to transaction control. file: [b8ba8e6d] check-in: [a9b6a067] user: drh branch: trunk, size: 141097
2016-01-30
12:50
Simplification and size reduction to the printf logic. Remove the bFlags parameter from sqlite3VXPrintf() and sqlite3XPrintf(). Use sqlite3XPrintf() instead of sqlite3_snprintf() for rendering P4 values in EXPLAIN output. file: [221631e4] check-in: [0bdb41c4] user: drh branch: trunk, size: 141097
00:45
Change the P4_INTARRAY so that always begins with a length integer. Print the content of the INTARRAY on EXPLAIN output. file: [10812402] check-in: [6c520d57] user: drh branch: covering-or, size: 141925
2016-01-29
19:29
Experimental attempt to make better use of covering indexes within OR queries. file: [657402ba] check-in: [a323ac3a] user: dan branch: covering-or, size: 141461
2016-01-28
08:58
Remove a duplicate "p->magic = VDBE_MAGIC_RUN;" line from vdbeaux.c. file: [fc8926c4] check-in: [688eb3b4] user: dan branch: trunk, size: 141274
2016-01-25
02:15
Small simplification to the prepare statement opcode memory reuse logic. Easier to read, and slightly smaller and faster. file: [757f86e6] check-in: [8a1deae4] user: drh branch: trunk, size: 141303
2016-01-20
12:18
Merge recent enhancements from trunk. file: [c7854a47] check-in: [5520f600] user: drh branch: begin-concurrent, size: 142150
11:40
Merge all recent enhancements from trunk. file: [1f497eb8] check-in: [3ed49691] user: drh branch: apple-osx, size: 141621
11:33
Merge recent enhancements from trunk. file: [3781db19] check-in: [327af5f6] user: drh branch: sessions, size: 144279
08:47
Improve performance of sqlite3VtabImportErrmsg(). file: [07f8f485] check-in: [18d61c8e] user: dan branch: trunk, size: 141600
02:36
Suppress the display of the P4 operand in EXPLAIN output when an opcode has been converted into a No-op. file: [db67d3e0] check-in: [9f8297f8] user: drh branch: trunk, size: 141562
02:01
Remove an unnecessary memset() for a small size reduction and speed improvement. file: [d34740a4] check-in: [730d7efb] user: drh branch: trunk, size: 141545
01:48
During compilation, transfer the azVar[0..nzVar-1] array from Parse to Vdbe rather than copying it. Smaller and faster code. file: [f53b709c] check-in: [80dd495f] user: drh branch: trunk, size: 141551
2016-01-19
17:54
Fix two harmless compiler warnings about comparisons of dangling pointers. file: [fcbca151] check-in: [86944f19] user: drh branch: trunk, size: 141708
2016-01-18
00:20
Fix a problem with SQLITE_TEST_REALLOC_STRESS. file: [95e067a5] check-in: [0aaf3feb] user: drh branch: trunk, size: 141708
2016-01-16
20:50
Improvements to the way sqlite3VdbeAddOpList() works, resulting in a slightly smaller and faster binary. file: [82969fb2] check-in: [88ceb588] user: drh branch: trunk, size: 141424
15:12
Use sqlite3VdbeAddOp4() rather than a separate sqlite3VdbeChangeP4() call, for a slightly smaller and faster binary. file: [906c0350] check-in: [a4258cd4] user: drh branch: trunk, size: 140930
2016-01-14
15:46
Merge the latest enhancements and fixes from trunk. file: [a05ffe92] check-in: [fccc5f20] user: dan branch: begin-concurrent, size: 141460
15:03
Merge the latest enhancements and fixes from trunk. file: [c9936e48] check-in: [d85774e0] user: drh branch: apple-osx, size: 140931
14:48
Merge the latest fixes and enhancements from trunk. file: [30f329b9] check-in: [007e5c6d] user: drh branch: sessions, size: 143589
2016-01-11
22:58
Performance optimization in the sqlite3VdbeChangeP4() routine of the code generator. file: [f2e6b4fa] check-in: [28bd8d5f] user: drh branch: trunk, size: 140910
13:10
Merge recent enhancements, and especially the WAL overwrite change, from trunk. file: [77b4a5cb] check-in: [c4a858b2] user: drh branch: sessions, size: 144008
12:49
Merge enhancements from trunk, and in particular the WAL overwrite feature. file: [7b65a9fd] check-in: [79125ec9] user: drh branch: apple-osx, size: 141350
2016-01-07
16:06
Have the vdbe layer call sqlite3BtreeEnter() on all b-trees in use from within sqlite3VdbeExec() even in SQLITE_THREADSAFE=0 builds. This ensures that BtShared.db is set correctly. file: [5d8c7c04] check-in: [d0214602] user: dan branch: shared-cache-fix, size: 141329
2016-01-06
15:49
Merge changes for version 3.10.0. file: [83120486] check-in: [e1d2ffc0] user: drh branch: begin-concurrent, size: 141902
15:14
Merge changes for version 3.10.0. file: [13ddc450] check-in: [fa4705c9] user: drh branch: sessions, size: 144031
14:35
Merge all version 3.10.0 updates. file: [8e542577] check-in: [77c28c2b] user: drh branch: apple-osx, size: 141373
2016-01-05
03:39
Another attempt to get reuse of excess opcode array space working correctly on all architectures and platforms. file: [3308a07a] check-in: [2f858374] user: drh branch: trunk, size: 141352
2016-01-04
23:43
Fix a corner case in the opcode-array reuse logic where the number of bytes of reusable space might be computed to be a negative number, due to unusual system alignment restrictions and rounding error. file: [141ee231] check-in: [1aa53014] user: drh branch: trunk, size: 141228
19:02
Merge in last-minute patches for the 3.10.0 beta. file: [035470b5] check-in: [c785cd78] user: drh branch: sessions, size: 143698
2016-01-01
16:42
Remember the size of the Vdbe.aOp[] array in bytes, to avoid unnecessary calls to sqlite3_msize(). file: [66b546a1] check-in: [3e852804] user: drh branch: trunk, size: 141019
16:26
Avoid misaligned memory allocations on Sparc in sqlite3VdbeMakeReady(). This fixes a problem introduced by check-in [a9e819082b]. file: [2a25e57e] check-in: [a304e346] user: drh branch: trunk, size: 140957
14:14
Merge recent trunk enhancements. file: [4b69fec9] check-in: [6bea792c] user: drh branch: begin-concurrent, size: 141561
13:31
Merge all recent trunk enhancements. file: [41d34931] check-in: [5b700f31] user: drh branch: apple-osx, size: 141032
13:25
Merge the latest enhancements from trunk. file: [e312c85b] check-in: [c0be246a] user: drh branch: sessions, size: 143690
2015-12-31
04:34
Small size and performance optimization to the VDBE comparison opcodes. file: [ca523180] check-in: [7a0b9413] user: drh branch: trunk, size: 141011
2015-12-17
19:17
Make the VdbeCursor object even smaller. But the resulting library is bigger and slower than trunk. This branch is a failed experiment. file: [b0d427a5] check-in: [896a06cc] user: drh branch: optimize-vdbecursor, size: 141085
17:30
Reduce the size of the VdbeCursor object by a pointer (the pBt pointer used for ephemeral tables). file: [7b2db8d1] check-in: [98b710c3] user: drh branch: optimize-vdbecursor, size: 141027
2015-12-16
19:55
Merge recent enhancements from trunk. file: [0331f1d3] check-in: [cb22efaf] user: drh branch: begin-concurrent, size: 141534
19:47
Merge recent enhancements from trunk. file: [6783ed39] check-in: [f6c9273c] user: drh branch: sessions, size: 143663
2015-12-11
13:51
Simplified alignment constraints in the memory reuse logic of sqlite3VdbeMakeReady(). file: [68082d99] check-in: [e998513e] user: drh branch: trunk, size: 140984
12:53
Merge recent trunk enhancements, and in particular the snapshot interface. file: [192fba4a] check-in: [7e7b2406] user: drh branch: apple-osx, size: 141056
04:11
Fix a memory allocation bug introduced last week by check-in [a9e819082ba]. The bug only appears on systems where the size of a structure is not always a multiple of 8 - which in practice means only on 32-bit windows systems. file: [864b9ec2] check-in: [96d3e99f] user: drh branch: trunk, size: 141035
2015-12-09
17:23
Further simplifications to the VDBE code generation logic that flow out of the previous check-in. file: [e07b2c8d] check-in: [6a5dfe85] user: drh branch: trunk, size: 141005
2015-12-08
16:58
Changes to avoid undefined behavior in memset() and memcpy() and in the comparisons of pointers from different allocations. All problems are found by analysis tools - none have been seen in the wild. file: [8405f744] check-in: [901d0b8f] user: drh branch: trunk, size: 141119
2015-12-07
16:43
Changes to avoid undefined behavior detected by analysis tools - never observed in the wild. Later: This check-in introduces a bug, fixed at [a304e34675404aee]. file: [f7a3e80d] check-in: [a9e81908] user: drh branch: trunk, size: 141107
2015-12-02
20:53
Merge recent enhancements from trunk. file: [1236e154] check-in: [9130661a] user: drh branch: begin-concurrent, size: 141623
20:40
Merge recent enhancements from trunk. file: [514e93b1] check-in: [d1a1278d] user: drh branch: sessions, size: 143752
20:22
Merge all recent trunk enhancements, especially the unix VFS changes. file: [e189aaf4] check-in: [e1fb33c7] user: drh branch: apple-osx, size: 141094
2015-11-24
00:49
Do not try to eliminate No-ops at the end of VDBE program as this can cause problems for some DISTINCT handling algorithms, and does not improve performance. This also fixes an assertion fault found by libFuzzer. file: [9a234c9a] check-in: [19d9f9ce] user: drh branch: trunk, size: 141073
2015-11-21
17:53
Add a new OP_BColumn opcode where the cursor is guaranteed to be of type CURTYPE_BTREE and is thus able to skip some checks and run slightly faster. file: [16e21a6a] check-in: [093e0d10] user: drh branch: btree-column-opcode, size: 141096
2015-11-20
19:22
Refactor the VdbeCursor object. It is now slightly smaller and faster and is easier to understand. file: [b660c995] check-in: [9b1d174d] user: drh branch: trunk, size: 141108
13:49
Merge all the latest enhancements and fixes from trunk. file: [0a6263b8] check-in: [41c8b8e3] user: drh branch: begin-concurrent, size: 141218
2015-11-19
19:40
Merge the latest enhancements from trunk. file: [67db9a1c] check-in: [7d6cfc79] user: drh branch: sessions, size: 143347
2015-11-12
16:51
Merge the latest enhancements from trunk, and in particular the "PRAGMA cache_spill=N" change. file: [2fab8625] check-in: [e72331c7] user: drh branch: apple-osx, size: 140689
2015-11-09
12:33
Avoid unnecessary function prologues in the sqlite3VdbeAddOp3() routine. file: [da9eddc6] check-in: [7c6a19ba] user: drh branch: trunk, size: 140668
2015-11-07
01:57
Merge recent enhancements and fixes from trunk. file: [4b4bda5e] check-in: [5429f99b] user: drh branch: apple-osx, size: 140458
01:33
Merge recent enhancements and bug fixes from trunk. file: [1c5969fa] check-in: [78bc42e6] user: drh branch: sessions, size: 143116
2015-11-06
20:22
Avoid an unnecessary key comparison when doing an indexed lookup against an equality constraint. file: [6d55530b] check-in: [d741e1cc] user: drh branch: trunk, size: 140437
20:13
Work around a sign-extension bug in the optimizer on the HP C compiler that comes with HP/UX. file: [232c242a] check-in: [46c36b15] user: drh branch: trunk, size: 140361
17:28
A proposed patch for working around a bug in the optimizer for the HP compiler found on HP/UX Itanium. file: [5f7b42d8] check-in: [8a171548] user: drh branch: hp-optimizer-fix, size: 139691
14:59
A different approach to handling integer/float comparisons. This seems to work better on systems where "long double" and "double" are the same type, but still needs refinement and testing. file: [869c95b0] check-in: [a3f7614b] user: drh branch: int-float-precision, size: 140205
01:04
Increase the precision of integer vs. floating-point comparisons. Candidate fix for ticket [38a97a87a6e4e8]. file: [debf7e02] check-in: [cfcaa0ff] user: drh branch: int-float-precision, size: 139607
2015-11-05
20:25
The top of an index equality loop normally starts with OP_SeekGE and OP_IdxGT. This check-in adds a flag to OP_SeekGE such that it fails immediately if the key is not equal, then jumps over the OP_IdxGT, saving a call to the key comparison functions. Consider this check-in a proof-of-concept. It needs improvement before going on trunk. Some tests fail, but only because they new use fewer key comparisons than expected (which is a good thing!). file: [229c12a6] check-in: [32e31b9b] user: drh branch: seekeq-experiment, size: 139611
2015-10-30
17:17
Merge the sqlite3_db_cacheflush() enhancements and other changes from trunk. file: [2a20e7f5] check-in: [f2cde4cf] user: drh branch: begin-concurrent, size: 140085
16:50
Merge all the latest enhancements from trunk. file: [3c67cbde] check-in: [395a153f] user: drh branch: sessions, size: 142214
16:23
Merge latest trunk changes, including sqlite3_db_cacheflush(), with this branch. file: [0e5a83f4] check-in: [6e4306ef] user: dan branch: apple-osx, size: 139556
2015-10-26
20:50
Merge latest trunk changes, including the SQLITE_IOERR_AUTH error code, with this branch. file: [ead8cfff] check-in: [bc195e1c] user: dan branch: apple-osx, size: 136402
2015-10-16
20:55
Merge the 3.9.1 updates from trunk. file: [14e4b4d6] check-in: [bf866e6c] user: drh branch: begin-concurrent, size: 136931
20:53
Merge recent enhancements from trunk. Version now 3.9.1. file: [717bc2ae] check-in: [26fa091d] user: drh branch: cursor-hints, size: 139535
14:54
Have the sqlite3VdbeSerialType() function go ahead and compute the serial length as well, since it is always needed. This avoids unnecessary calls to sqlite3VdbeSerialTypeLen(). file: [906bc74e] check-in: [2ad72be1] user: drh branch: trunk, size: 136381
14:23
Use a lookup table to compute the content length for serial types less than 128, for a 1.2% performance improvement. file: [0ba11268] check-in: [33957248] user: drh branch: trunk, size: 136151
03:34
Whenever two or more OP_Column opcodes on the same cursor occur in succession, try to reordering them so that the one that extracts the right-most column is first, so that it will warm up the row cache for all those that follow. This gives a small performance boost. file: [170a0eef] check-in: [08e8f04d] user: drh branch: reorder-column-opcodes, size: 136545
2015-09-03
15:17
Changes from ENABLE_CONCURRENT (default off) to OMIT_CONCURRENT (default on). This is not a clear-cut decision and might be changed back. file: [4988b83d] check-in: [f8ae9bfd] user: drh branch: begin-concurrent, size: 135793
14:48
Merge recent trunk enhancements. file: [4cbd4cc7] check-in: [6a513c05] user: drh branch: sessions, size: 137922
14:39
Merge enhancements from trunk. file: [7dccd114] check-in: [25ee3000] user: drh branch: cursor-hints, size: 138397
14:31
Merge enhancements from trunk. file: [f1f5d5ac] check-in: [d01658ad] user: drh branch: apple-osx, size: 135264
14:04
Merge trunk optimizations. file: [33e29737] check-in: [71e7299e] user: drh branch: begin-concurrent, size: 135794
13:46
Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto() to just sqlite3VdbeGoto(). file: [fd00b489] check-in: [847387ec] user: drh branch: trunk, size: 135243
04:28
Factor out and simplify code in pragma.c for pragmas that return a single row with a single column that is an integer or text value. file: [9a10bda8] check-in: [d7f4bdf5] user: drh branch: trunk, size: 134035
2015-09-02
18:40
Add and use the sqlite3VdbeChangeOpcode() routine. Simplify the implementation of the other sqlite3VdbeChange*() routines. file: [b67374bd] check-in: [0a5b00e4] user: drh branch: trunk, size: 134021
18:19
Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for sqlite3VdbeAddOp2(v,OP_Goto,0,i). file: [44b042bf] check-in: [be78f413] user: drh branch: trunk, size: 134509
17:55
Change sqlite3_sql() so that it always returns the SQL text of the prepared statement, if the text is available, even if the the prepared statement was generated using sqlite3_prepare() instead of sqlite3_prepare_v2(). Also include some minor comment fixes and code simplifications. file: [a5d98e1d] check-in: [2f5472cf] user: drh branch: trunk, size: 134410
12:52
This change is not correct for the boundary case of nCellKey==0. Was: Small performance gain and size reduction in sqlite3VdbeIdxKeyCompare(). file: [be25beff] check-in: [6e0298cd] user: drh branch: mistake, size: 134455
2015-08-28
02:12
Merge trunk enhancements into the apple-osx branch. Most tests works, but there are yet a few issues to be resolved. file: [feb3bec6] check-in: [da864658] user: drh branch: apple-osx, size: 134429
2015-08-24
19:56
Change "BEGIN UNLOCKED" to "BEGIN CONCURRENT". file: [9c59b060] check-in: [ba1ab858] user: dan branch: begin-concurrent, size: 134959
16:00
Fix compilation without SQLITE_ENABLE_UNLOCKED. Also other code organization issues. file: [5a07e354] check-in: [04113557] user: dan branch: begin-concurrent, size: 134949
2015-08-21
20:11
Fix many minor issues in the unlocked transaction code. file: [4fae90f5] check-in: [53aaeea6] user: dan branch: begin-concurrent, size: 134912
16:22
Merge trunk changes with this branch. file: [0d62c6c2] check-in: [deaf3b18] user: dan branch: begin-concurrent, size: 134921
2015-08-20
23:54
Merge recent trunk enhancements, include table-valued functions. file: [634a480a] check-in: [e9196d56] user: drh branch: sessions, size: 137087
23:45
Merge recent enhancements from trunk, including table-valued expressions. file: [2262c5a6] check-in: [b9927c87] user: drh branch: cursor-hints, size: 137562
2015-08-15
16:32
Minor fix to the display of oversized KeyInfo structures in the P4 operand of Open opcodes in EXPLAIN output. file: [af2d86b2] check-in: [f65a9b4a] user: drh branch: trunk, size: 134408
00:51
Change the display of the P4 operand of CursorHint in EXPLAIN output to function notation. file: [e8dbcc83] check-in: [bee73d42] user: drh branch: cursor-hints, size: 137544
2015-08-14
18:50
Fix the cursor hint mechanism so that it does the right thing for indexed lookups. file: [9f726265] check-in: [581e3d49] user: drh branch: cursor-hints, size: 137342
01:03
Fix the CursorHint so that it includes the scan boundary constraints. On the expression text for the CursorHint opcode, show rowid correctly. file: [8bb1ef79] check-in: [f0d428d1] user: drh branch: cursor-hints, size: 137329
2015-08-13
21:43
Convert the hint expression of the CursorHint opcode into a string for display by EXPLAIN. file: [f4ed66c4] check-in: [12640cb2] user: drh branch: cursor-hints-displayP4, size: 109675
21:32
Convert the hint expression of the CursorHint opcode into a string for display by EXPLAIN. file: [56077f78] check-in: [20688471] user: drh branch: cursor-hints, size: 137227
20:07
Merge in all the trunk changes from the previous year. This breaks the cursor-hint mechanism, but provides a baseline for trouble-shooting. file: [6194de3a] check-in: [82a7a61b] user: drh branch: cursor-hints, size: 135021
2015-07-29
12:14
Only allow UNLOCKED transactions to commit if none of the pages read by the transaction have been modified since it was opened. file: [24a03ccb] check-in: [0b971842] user: dan branch: begin-concurrent, size: 134982
2015-07-27
19:31
Add an experimental "BEGIN UNLOCKED" command. file: [27feae10] check-in: [80794216] user: dan branch: begin-concurrent, size: 134903
2015-07-14
15:39
Merge trunk changes, including the addition of FTS5 and pcache1 performance enhancements. file: [2d86fc54] check-in: [db4cbefb] user: drh branch: sessions, size: 137069
2015-07-08
12:25
Early detection of file corruption in a debugging routine, before the invalid data can cause problems. file: [787f5f9d] check-in: [b27a47fe] user: drh branch: trunk, size: 134390
2015-06-30
16:29
Merge all the latest enhancements from trunk. This merge include FTS5 and a number of notable performance enhancements. file: [d6bfb7b4] check-in: [39936b33] user: drh branch: sessions, size: 137025
2015-06-28
02:58
Avoid unnecessary calls to sqlite3VdbeSerialTypeLen() for integer serial types, for a small size reduction and a speed increase. file: [54bcc56d] check-in: [9cd30d33] user: drh branch: trunk, size: 134346
2015-06-26
18:47
Further optimization of SQL function dispatch. Improvements to opcode documentation. file: [13261b75] check-in: [eaddbf29] user: drh branch: trunk, size: 134272
18:16
Cache the sqlite3_context structure in the P4 operand of VDBE programs for faster SQL function dispatch. file: [316e6bc7] check-in: [2abc44eb] user: drh branch: trunk, size: 134245
2015-06-17
18:18
Merge all recent enhancements and fixes from trunk. file: [73788765] check-in: [199bfb67] user: drh branch: sessions, size: 136744
01:31
Optimizations to two VDBE accessory routines for a 0.2% performance increase. file: [4c82d6f6] check-in: [66d033b9] user: drh branch: trunk, size: 134065
2015-06-16
16:39
Ensure that the CREATE TABLE AS statement correctly undoes partial changes to the sqlite_master table if the SELECT on the right-hand side aborts with an error. Fix for ticket [873cae2b6e25b] file: [b4a12763] check-in: [400e025e] user: drh branch: trunk, size: 133999
2015-06-05
15:59
Add a new opcode to the VDBE that gives the b-tree a hint about the set of columns in a table or index that are actually used by the query. file: [89c85926] check-in: [f167bba4] user: drh branch: column-usage-hint, size: 133704
2015-05-29
19:04
Import recent enhancements from trunk. file: [9b50d924] check-in: [54bec164] user: drh branch: sessions, size: 135805
2015-05-26
20:31
Avoid a buffer overread when comparing against a corrupt record that spans at least one overflow page. file: [46f9bc4b] check-in: [62a5b363] user: dan branch: trunk, size: 133126
20:07
Avoid branching on an uninitalized variable when comparing SQL values with the undefined serial types 10 and 11 (which only appear in corrupt databases). file: [d3e4b36e] check-in: [b4a45d3b] user: dan branch: trunk, size: 133126
2015-05-21
17:24
Prevent a virtual table from being destroyed while it is in use. Also: replace Vdbe.inVtabMethod with sqlite3.nVDestroy. Simplify the EXPLAIN output for P4.pVtab to only show the sqlite3_vtab pointer. Cherrypick of [cbeb9a1aed8c]. file: [3021f190] check-in: [b3bb660a] user: dan branch: branch-3.8.6, size: 126391
2015-05-19
22:42
Merge recent trunk changes, include the R-Tree enhancement that allows 8-byte BLOB arguments to geometry functions, and the fix for the TEXT affinity problem that could cause corrupt indexes. file: [38233cc7] check-in: [0a0de8b7] user: drh branch: sessions, size: 135539
2015-05-15
04:13
Simplifications to error message processing. Fix a possible problem in error message formatting when vacuuming a database with a corrupt schema. file: [efe1667d] check-in: [56ef98a0] user: drh branch: trunk, size: 132860
2015-04-22
14:41
Prototype for an sqlite3_db_log() interface. file: [aa9b179c] check-in: [658e20f5] user: drh branch: sqlite3_db_log, size: 132650
2015-04-20
01:32
Merge all recent trunk enhancements and fixes into the sessions branch. file: [4ccd9105] check-in: [b8ef1cde] user: drh branch: sessions, size: 135315
01:25
Merge all recent trunk enhancements and fixes into the apple-osx branch. file: [85b76767] check-in: [74b7bf17] user: drh branch: apple-osx, size: 132657
2015-04-16
18:11
Make sure all cursors are closed when returning from a VDBE subprogram that implements a foreign-key construct. file: [03591cca] check-in: [d04d354d] user: drh branch: trunk, size: 132636
2015-04-13
23:11
Merge all recent trunk enhances into the apple-osx branch. file: [8d4b5165] check-in: [e709d3b4] user: drh branch: apple-osx, size: 132512
2015-04-12
01:33
Merge all recent trunk enhancements into the sessions branch. file: [70d414ec] check-in: [5f14f34f] user: drh branch: sessions, size: 135170
2015-03-30
12:06
Improve performance of multi-field sorts where the first field has a low cardinality. file: [a20504ae] check-in: [601e7b6b] user: dan branch: sorter-opt, size: 132491
2015-03-24
19:02
Merge all recent trunk enhancements into the sessions branch. file: [3f36b184] check-in: [54aaa6f2] user: drh branch: sessions, size: 135149
18:49
Merge the latest trunk enhancements into the apple-osx branch. file: [ca50e730] check-in: [a2bd81e5] user: drh branch: apple-osx, size: 132491
14:57
Simplify the EXPLAIN output of virtual table P4 parameters to only show the pointer to the sqlite3_vtab object and omit the sqlite3_module object. file: [413dc496] check-in: [85610bbb] user: drh branch: nVDestroy, size: 132470
14:05
More defenses against virtual table being deleted out from under a running statement. file: [056eefd3] check-in: [116c9982] user: drh branch: nVDestroy, size: 132541
13:32
Prevent a virtual table from being destroyed while it is in use. file: [741cccd4] check-in: [fba674c0] user: drh branch: nVDestroy, size: 132489
12:51
Replace the Vdbe.inVtabMethod field with the sqlite3.nVDestroy counter. file: [d62823d7] check-in: [9faefb96] user: drh branch: nVDestroy, size: 132415
2015-03-17
18:54
Merge all recent trunk enhancements into the sessions branch. file: [bf85a597] check-in: [1d1c57c3] user: drh branch: sessions, size: 135144
18:35
Merge all recent trunk changes, and in particular the blocking WAL lock change, into the apple-osx branch. file: [22b30682] check-in: [8abbeadb] user: drh branch: apple-osx, size: 132486
2015-03-16
16:44
When deleting the master journal to commit a multi-database transaction, do not sync the directory if PRAGMA synchronous=OFF for all participating database files. file: [23390670] check-in: [018d7671] user: drh branch: trunk, size: 132465
2015-02-06
16:03
Merge all recent trunk enhancements into the apple-osx branch. file: [7069b951] check-in: [44711921] user: drh branch: apple-osx, size: 132479
15:40
Merge all the latest enhancements from trunk. file: [fbc0e6df] check-in: [ae7eef11] user: drh branch: sessions, size: 135137
2015-01-21
00:51
Fix harmless compiler warning seen with MSVC. file: [97911edb] check-in: [78c2e62b] user: mistachkin branch: trunk, size: 132458
2015-01-19
20:57
Fix the assert() of the previous check-in so that it works even when compiled without SQLITE_DEBUG. file: [f06d38c7] check-in: [38868f84] user: drh branch: tkt-f97c4637, size: 132432
19:48
An alternative way of implementing the assert() that verifies the relative values of KeyInfo.nField+KeyInfo.nXField and the number of columns in a record. This version of the assert() only fires when the high-speed comparison routines are used - which is to say it only fires when the constraint actually matters. file: [d22d71f5] check-in: [bf744b49] user: drh branch: tkt-f97c4637, size: 132377
19:21
An alternative way of fixing the key comparison bug of ticket [f97c4637102a3ae72b]. file: [a27240f5] check-in: [e41376cf] user: drh branch: alt1-tkt-f97c4637, size: 130416
18:18
Strengthen the KeyInfo number-of-columns assert() added by the previous check-in. file: [d4b4b547] check-in: [d0971b79] user: drh branch: tkt-f97c4637, size: 131801
17:28
Add an assert() to verify that the nField+nXField values of a KeyInfo object are never less then the number of columns in a row for a non-corrupt database. This assert() currently fails, which is the root of the problem with ticket [f97c4637102a3ae72b]. file: [75e0540c] check-in: [083f523d] user: drh branch: tkt-f97c4637, size: 131593
2015-01-02
19:17
Merge the latest changes from trunk into the apple-osx branch. file: [65d25166] check-in: [df3cdf9f] user: drh branch: apple-osx, size: 131215
2014-12-20
14:58
Merge the PRAGMA data_version command and the enhancements to FK query planning from trunk into the sessions branch. file: [db4cf9f6] check-in: [d4f82af0] user: drh branch: sessions, size: 133873
2014-12-16
20:13
Experimental opimizations to speed up FK constraint CASCADE and SET NULL action processing. Requires further testing. file: [07ef87c6] check-in: [35a20a5f] user: dan branch: experimental-fk-actions, size: 131194
2014-12-05
14:36
Add code to check the validity of CollSeq objects during runtime. This code was not able to detect anomalies such as came up as a result of ticket [e4a18565a36884b00edf66541f38c693827968ab] so it is put into a branch for historical reference, with the intent of leaving it out of trunk. file: [7e0a097a] check-in: [68b23c3d] user: drh branch: collseq-checking, size: 131266
2014-12-02
16:38
Merge all recent enhancements and bug fixes from trunk into the apple-osx branch. file: [6f91a25a] check-in: [43c4ba26] user: drh branch: apple-osx, size: 131145
16:31
Merge all recent fixes and enhancements from trunk into sessions. file: [ccf6b7ca] check-in: [2617d937] user: drh branch: sessions, size: 133803
13:46
Work around overzealous NULL pointer checking in memcpy() and memset() for some systems. file: [6f7f39c3] check-in: [0d04f380] user: drh branch: trunk, size: 131124
2014-11-20
02:58
Fix the encoding of some integers to use the minimum amount of space: -128, -32768, -8388608, -217483648, and -140737488355328. file: [5ce4f414] check-in: [2d7c8da5] user: drh branch: trunk, size: 131105
02:18
Add some requirements marks to the record formatting logic. Comment changes only - the code is unaltered. file: [e3ae2745] check-in: [9a9627e1] user: drh branch: trunk, size: 131207
2014-11-18
21:27
Merge recent trunk enhancements. file: [7354ce66] check-in: [ccb601f6] user: drh branch: apple-osx, size: 130155
21:20
Merge recent trunk enhancements, including the read-after-ROLLBACK change and the addition of sqlite3_stmt_scanstatus() support, as well as various minor bug fixes. file: [19ecf5fc] check-in: [f09055f3] user: drh branch: sessions, size: 132813
2014-11-06
03:55
Change the SQLITE_SCANSTAT_EST parameter so that it returns a double for the estimated number of output rows per loop, rather than a 64-bit integer. Revise the output format for the ".scanstats on" in the shell to make use of this new capability. file: [9b0a251b] check-in: [f9684000] user: drh branch: scanstatus, size: 130134
2014-11-03
15:33
Add further tests. Fixes so that compilation without ENABLE_STMT_SCANSTATUS works. file: [cf6b8152] check-in: [a2303c71] user: dan branch: scanstatus, size: 130127
11:25
Remove unused variable from struct WhereInfo. Add some explanatory comments to new code. file: [0aeb90cb] check-in: [f5313e0c] user: dan branch: scanstatus, size: 130039
2014-11-01
21:00
Minor performance enhancements to SQLITE_ENABLE_STMT_SCANSTATUS code. file: [2887d027] check-in: [f13d6ba8] user: dan branch: scanstatus, size: 130044
20:38
If SQLITE_ENABLE_STMT_SCANSTATUS is defined, record the number of times each VDBE opcode is executed. Derive the values returned by sqlite3_stmt_scanstatus() from these records on demand. file: [bad342af] check-in: [9ea37422] user: dan branch: scanstatus, size: 130078
2014-10-31
20:11
Add the experimental sqlite3_stmt_scanstatus() API. file: [1e2561ee] check-in: [6a9bab34] user: dan branch: scanstatus, size: 129244
15:20
Merge all recent trunk enhancements into the apple-osx branch. file: [8990f551] check-in: [fef8430f] user: drh branch: apple-osx, size: 128829
14:53
Merge recent trunk enhancements, and in particular the improvements to the b-tree balancing logic, into the sessions branch. file: [d53c188c] check-in: [28b044a5] user: drh branch: sessions, size: 131487
2014-10-28
18:24
Modify the documentation for sqlite3_changes() to make it more testable. Add tests and minor fixes for the same. file: [3d6b2b41] check-in: [41cdd0c4] user: dan branch: trunk, size: 128808
2014-10-23
17:26
Add debugging code to count the number of iterations of each loop made as part of statement execution. file: [f9954f31] check-in: [c6a5b67a] user: dan branch: debug-loopcounters, size: 129461
2014-10-14
14:17
Merge from trunk recent micro-optimizations and the fix for the DESC index GROUP BY ORDER BY bug. file: [df93c769] check-in: [880df756] user: drh branch: apple-osx, size: 128667
13:41
Merge recent trunk micro-optimizations and the DESC index GROUP BY ORDER BY bug fix into the sessions branch. file: [191ea23e] check-in: [83d4114f] user: drh branch: sessions, size: 131325
2014-10-13
17:42
Three small optimizations to vdbeaux.c. file: [edbb7a9c] check-in: [04892f8b] user: drh branch: trunk, size: 128646
16:02
Reduce the CPU load imposed by sqlit3VdbeCursorMoveto() by factoring out some of its functions and by avoiding unnecessary calls. file: [8d101333] check-in: [c2799aec] user: drh branch: trunk, size: 128593
2014-10-12
22:37
Remove the VdbeCursor.lastRowid cache of the current rowid, since maintaining the correct cache value uses more CPU cycles than just recomputing the rowid on the occasions when it is actually needed. Replace it with the VdbeCursor.aOffset field which used to be computed from VdbeCursor.aType when needed. Saves 100 bytes of code space and runs 0.2% faster. file: [e223d15a] check-in: [91384a7d] user: drh branch: trunk, size: 128290
2014-10-01
01:52
Merge the latest enhancements from trunk. file: [ea20bde8] check-in: [2695772c] user: drh branch: sessions, size: 131026
01:46
Merge the latest enhancements from trunk. file: [a326631b] check-in: [2078454a] user: drh branch: apple-osx, size: 128368
2014-09-30
12:33
Remove the SQLITE_ENABLE_TREE_EXPLAIN compile-time option. Add alternative debugging display routines: sqlite3TreeViewExpr(), sqlite3TreeViewExprList(), and sqlite3TreeViewSelect(). file: [5b687d7b] check-in: [4ff51325] user: drh branch: trunk, size: 128347
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: [f8df1050] check-in: [5e5d6e86] user: drh branch: faster-OP_Column, size: 129342
15:42
Fix the header comment in sqlite3VdbeDeletePriorOpcode(). No changes to code. file: [8e016c60] check-in: [7fb16268] user: drh branch: trunk, size: 128462
2014-09-21
23:08
Merge in all recent changes from trunk. file: [2e927a76] check-in: [3967ebe8] user: drh branch: apple-osx, size: 128384
22:49
Merge all recent trunk changes into the sessions branch. file: [07b0045d] check-in: [6406b77f] user: drh branch: sessions, size: 131042
2014-09-19
16:13
Small size reduction and performance increase for releaseMemArray(). file: [a05adc3c] check-in: [24cd32d6] user: drh branch: trunk, size: 128363
16:02
Updates to comments. No code changes. file: [498b4251] check-in: [9b42c3da] user: drh branch: trunk, size: 128367
00:43
Add the sqlite3VdbeMemClearAndResize() interface to be used in place of sqlite3VdbeMemGrow(). A C++ style comment was left in this check-in by mistake, and so it has been moved into a branch to avoid problems in any future bisects on windows. file: [ecf0bb83] check-in: [5b9b8987] user: drh branch: Cplusplus-comment, size: 128690
2014-09-18
21:25
Add the Mem.szMalloc element to the Mem object and use it to keep track of the size of the Mem.zMalloc allocation. file: [b3230032] check-in: [9c09ac35] user: drh branch: trunk, size: 128680
17:52
Merge the Mem.r value into the MemValue union as Mem.u.r. Hence, a Mem can now store an integer or a real but not both at the same time. Strings are still stored in a separate element Mem.z, for now. file: [ac3188f1] check-in: [4c8c89d7] user: drh branch: trunk, size: 128627
2014-09-17
16:41
In the Mem object, stop requiring that Mem.xDel be NULL when the MEM_Dyn bit is clear. Also reduce the amount of initialization of Mem objects. All for a small size reduction and performance increase. file: [9ac63bc5] check-in: [fdddb477] user: drh branch: micro-optimizations, size: 128603
2014-09-16
20:05
Make sure registers are cleared properly prior to being used to store the result of an OP_Column operator. file: [211ad29d] check-in: [78fb8838] user: drh branch: micro-optimizations, size: 128568
14:55
Remove an unused parameter from sqlite3VdbeIdxRowid(). This is cosmetic only as the C-compiler optimizers were already omitting this parameter on amalgamation builds. file: [79ce140e] check-in: [a10a6bba] user: drh branch: micro-optimizations, size: 128541
14:37
Reduce the number of arguments to RecordCompare functions from 4 to 3, resulting in a small performance increase. file: [d06769a7] check-in: [8239c35a] user: drh branch: micro-optimizations, size: 128579
14:16
Reorder the elements of the Mem object for a small size reduction and performance improvement. Moved into a branch because MSVC is unable to handle named structure initializer on nullMem. file: [4d607ce8] check-in: [0be3019e] user: drh branch: micro-optimizations, size: 128539
13:30
Changes to sqlite3VdbeRecordUnpack() to make it slightly smaller and faster. file: [2f284f8b] check-in: [8fb90da7] user: drh branch: trunk, size: 128510
03:24
Performance improvement to the sqlite3MemCompare() routine by factoring out sqlite3BlobCompare(). file: [cde99fa6] check-in: [20ed2321] user: drh branch: trunk, size: 128500
2014-09-08
15:04
Merge support for large files on Android from trunk. file: [26428493] check-in: [c2885c6b] user: drh branch: sessions, size: 130867
2014-09-06
16:39
Fix typos in comments. No code changes. file: [91fd1e0c] check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 128188
2014-09-02
15:57
Merge the latest trunk changes into the apple-osx branch. file: [5ad6f1a2] check-in: [696dc935] user: drh branch: apple-osx, size: 128210
15:49
Merge the latest trunk changes, including the multi-threaded sorter, into the sessions branch. file: [3118c164] check-in: [d4cce2c7] user: drh branch: sessions, size: 130868
2014-08-29
11:24
Add the sqlite3VdbeChangeDest() routine that can be used to eliminate OP_Move opcodes. file: [1401d454] check-in: [8c57bcc3] user: drh branch: experimental, size: 128480
2014-08-26
02:15
Merge recent performance enhancements and the CAST operator enhancements into the sessions branch. file: [236cc1af] check-in: [08ae974a] user: drh branch: sessions, size: 130525
02:02
Merge recent performance enhancements and the CAST operator enhancements into the apple-osx branch. file: [bfde24b0] check-in: [5c273111] user: drh branch: apple-osx, size: 127867
2014-08-25
13:27
Merge the recent performance enhancements implemented on trunk into the threads branch. file: [cef5d34a] check-in: [dfdc900f] user: drh branch: threads, size: 128189
2014-08-22
23:33
Another performance tweak: Split the sqlite3BtreeCursorHasMoved() routine into two with the second routine named sqlite3BtreeCursorRestore(). The first now only reports whether or not the cursor has moved and the second tries to restore the cursor. This allows the sqlite3VdbeCursorMoveto() routine to be refactored to avoid stack pointer movements, for a noticable performance gain. file: [dba006f6] check-in: [ce123b5c] user: drh branch: trunk, size: 127846
18:00
Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. file: [f7fdc59e] check-in: [cf561d1f] user: drh branch: trunk, size: 127036
14:56
Handle the 4-byte integer case in the stackless routine. file: [d0b20a85] check-in: [3f55484e] user: drh branch: experimental, size: 127032
14:34
Get the sqlite3VdbeSerialGet() routine to run faster by avoiding the use of local variables. file: [f83d5c26] check-in: [8267d821] user: drh branch: experimental, size: 126988
13:22
Change a while-loop into a do-loop in sqlite3VdbeSerialPut() for a small size reduction and performance improvement. file: [9c957170] check-in: [750bb0a0] user: drh branch: trunk, size: 126408
2014-08-14
14:02
Merge the pre-3.8.6 changes into the threads branch. file: [142fdb31] check-in: [a608fd1d] user: drh branch: threads, size: 126729
13:39
Merge the pre-3.8.6 changes from trunk into the apple-osx branch. file: [41a7b823] check-in: [08058df3] user: drh branch: apple-osx, size: 126407
2014-08-13
14:43
Merge the trunk changes for 3.8.6 beta3 into the sessions branch. file: [22aabbde] check-in: [d49455d9] user: drh branch: sessions, size: 129065
2014-08-12
14:29
Improve the comments associated with SQLITE_TEST_REALLOC_STRESS and add an extra assert() to prove an assumption. file: [25d62ef8] check-in: [35c45461] user: drh branch: trunk, size: 126386
13:38
If SQLITE_TEST_REALLOC_STRESS is defined, extend the op-code array used by virtual-machine programs by one element at a time, instead of doubling its size with each realloc(). file: [d83ca171] check-in: [4c291827] user: dan branch: trunk, size: 126091
2014-08-08
15:38
The SQLITE_IOERR_BLOCKED extended error code is not longer used, so remove assert() statements and documentation for that error code. Also make other documentation improvements. file: [bbe934b0] check-in: [36b7c5ce] user: drh branch: trunk, size: 125548
2014-07-30
11:49
Merge all recent trunk changes, and especially the R-Tree IN operator fix of ticket [d2889096e7bdeac]. file: [34dcb2a0] check-in: [654c6c65] user: drh branch: apple-osx, size: 125647
2014-07-29
12:40
Merge recent trunk changes, and especially the fix for the R-Tree problem described in ticket [d2889096e7bdeac6]. file: [c034933f] check-in: [8f1beead] user: drh branch: sessions, size: 128305
2014-07-28
15:01
Merge recent trunk changes into the threads branch. file: [3f1d2baa] check-in: [163c247b] user: drh branch: threads, size: 125969
2014-07-25
21:35
Try to fix harmless compiler warnings reported by Fortify. file: [ac063f36] check-in: [e0fa6fdc] user: drh branch: trunk, size: 125626
2014-07-24
16:54
Merge all recent trunk changes into the threads branch. file: [68ef480f] check-in: [77068589] user: drh branch: threads, size: 125958
16:43
Merge recent trunk changes into the apple-osx branch. file: [43041ad3] check-in: [3810dc62] user: drh branch: apple-osx, size: 125636
16:23
Merge recent trunk changes into the sessions branch. file: [f7ef74c5] check-in: [a9db017e] user: drh branch: sessions, size: 128294
2014-07-21
15:44
Allow the SQLITE_MAX_ATTACHED compile-time option to be larger than 62. The default limit on the number of attached databases remains 10. file: [1ffe0bbc] check-in: [1a817ae2] user: drh branch: trunk, size: 125615
2014-07-19
17:57
Update the sqlite3_stmt_busy() function so that it correctly returns true for "ROLLBACK" statements that have been stepped but not yet reset. file: [8d32b5a6] check-in: [61cee3c0] user: dan branch: trunk, size: 125649
2014-06-30
20:25
Merge the latest trunk changes into the threads branch. file: [49c799bd] check-in: [ae23a65e] user: drh branch: threads, size: 125993
20:02
Merge the latest trunk enhancements into the sessions branch. file: [36eb94ea] check-in: [a5d94eab] user: drh branch: sessions, size: 128329
19:57
Merge the latest trunk changes into the apple-osx branch. file: [f587cb9d] check-in: [f426876f] user: drh branch: apple-osx, size: 125671
2014-06-28
19:06
Add an OOM fault injection test for the new code on this branch. file: [8ce7dcdb] check-in: [c96de490] user: dan branch: stat4-skipscan, size: 125650
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: [808daddb] check-in: [17349a49] user: drh branch: safer-malloc, size: 125680
2014-05-08
23:01
Initial attempt to merge in all trunk changes over the previous 1.5 years. This check-in compiles but there are compiler warnings and "make test" segfaults after only running a few test modules. file: [a82cfad3] check-in: [9411d7dc] user: drh branch: apple-osx, size: 125589
2014-05-02
18:46
Do not run the vdbeRecordCompareDebug() assert if pKeyInfo->db is NULL since in that case there would be no way to check for a memory allocation failure. file: [44d4d1f5] check-in: [63ed2d6a] user: drh branch: threads, size: 125863
18:05
Merge orderby-planning with this branch. file: [f651c4de] check-in: [d9549de3] user: dan branch: threads, size: 125829
17:33
Simplify assert() statements used to verify correct operation of record comparison routines. file: [c9a8c917] check-in: [3300d62d] user: drh branch: orderby-planning, size: 125473
17:12
Fix some broken asserts in btree.c and vdbeaux.c that may fail following an OOM error. file: [6e6993fa] check-in: [e15f4706] user: dan branch: threads, size: 126143
2014-04-18
12:38
Merge recent trunk changes into the threads branch. file: [8289ed68] check-in: [8729aa3e] user: drh branch: threads, size: 125943
01:10
Merge recent trunk changes into sessions. file: [e0c2e24e] check-in: [95e77efe] user: drh branch: sessions, size: 128247
2014-04-13
19:28
Remove the unused second argument from sqlite3ExprCachePop(). Add an ALWAYS() on an always-true conditional in sqlite3VdbeResolveLabel(). file: [e493f387] check-in: [ab23abf3] user: drh branch: trunk, size: 125568
2014-04-03
16:35
Merge all recent changes from trunk, including the fix for the OP_SCopy-vs-OP_Copy problem. file: [f9c225c2] check-in: [9515c834] user: drh branch: sessions, size: 128239
2014-04-01
10:19
Fix a problem with OOM handling in the sorter code. file: [d8dc3896] check-in: [59cd5229] user: dan branch: threads, size: 125935
2014-03-28
03:12
Enhance the sqlite3VdbeRecordCompare() routines so that if they encounter database corruption, they will set the UnpackedRecord.isCorrupt field and return 0. The sqlite3BtreeMovetoUnpacked() routine detects this and returns SQLITE_CORRUPT, causing the corruption to be reported back to the top-level. file: [1153175f] check-in: [7fa85eaa] user: drh branch: trunk, size: 125560
2014-03-26
19:43
Merge in fixes (including the corrupt-database crash fix) and performance enhancements from trunk. file: [74aa0e2e] check-in: [fc8ca1a8] user: drh branch: sessions, size: 127901
16:22
Fix a potential buffer overread that could have occurred when searching a corrupt database file. file: [714df4e1] check-in: [db293547] user: drh branch: branch-3.8.4, size: 124971
14:51
Earlier detection of corruption in sqlite3VdbeRecordCompare() in order to avoid a potential buffer overread. file: [f81ef920] check-in: [28ddecff] user: drh branch: trunk, size: 125222
12:02
Add an assert() and a comment to clarify the operation of the vdbeRecordCompareInt() routine. file: [9898720d] check-in: [851abdb8] user: drh branch: trunk, size: 125165
2014-03-25
11:00
Detect when a VdbeCursor is still pointing at a valid row but that row has moved, and invalidated the return from prior sqlite3BtreeDataFetch() or sqlite3BtreeKeyFetch() calls. file: [68dbdc77] check-in: [e6798871] user: drh branch: trunk, size: 124973
2014-03-19
14:10
First attempt at getting block-sort to work. This is an incremental check-in. There are many problems still to be worked out. file: [5078ca7d] check-in: [59742dd4] user: drh branch: orderby-planning, size: 124955
2014-03-06
13:48
Merge the latest 3.8.4 tweaks from trunk. file: [1d0dad08] check-in: [1ed463d9] user: drh branch: sessions, size: 127593
01:56
Fix some incorrect comments and typos in comments. Add testcase() macros to some of the new record comparison code. file: [e45e3f9d] check-in: [b83cfe89] user: drh branch: trunk, size: 124914
2014-03-05
14:49
Merge in various obscure bug fixes and the removal of Mem.memType from trunk. file: [955216d3] check-in: [0828975d] user: drh branch: sessions, size: 126488
01:29
Experimental simplification of memory flags/type handling. file: [43bee29a] check-in: [bac2820e] user: mistachkin branch: noMemType, size: 123809
2014-03-04
16:21
Fix an assert() so that it takes OOM errors into account. file: [0be881d8] check-in: [53f6ec79] user: drh branch: trunk, size: 124127
14:34
Merge the performance enhancements of trunk (and some obscure bug fixes) into the sessions branch. file: [c50dc4f1] check-in: [7f51ad97] user: drh branch: sessions, size: 126767
11:16
Fix harmless compiler warning. file: [636a7e2e] check-in: [8d18a803] user: mistachkin branch: trunk, size: 124088
04:04
Fix more instances of assuming 'char' is signed. And, make sure to never shift a signed integer. file: [b3bd75b2] check-in: [f10130ed] user: drh branch: broken-on-arm, size: 124088
2014-03-03
21:46
Fix a couple of harmless compiler warnings. file: [5adf67ef] check-in: [fcf480cc] user: drh branch: experimental, size: 124235
20:48
Avoid a buffer overread in vdbeCompareRecordInt() that might occur if the database is corrupt. file: [687165bd] check-in: [7c0b4381] user: dan branch: experimental, size: 124268
19:29
Fix a typo in a comment. No changes to code. file: [b8174800] check-in: [1f4991ab] user: drh branch: experimental, size: 123767
18:25
Fix compiler warnings. file: [f6d49b82] check-in: [ba899372] user: drh branch: experimental, size: 123767
15:13
Fix a harmless compiler warning. file: [e4a0f89d] check-in: [d7f6837e] user: drh branch: experimental, size: 123669
14:45
Merge latest trunk changes. file: [f0532f7c] check-in: [e00ed717] user: dan branch: experimental, size: 123662
2014-03-01
19:44
Remove the vdbeRecordCompareLargeHeader function. Fix some other details. file: [da0979ce] check-in: [3861e853] user: dan branch: experimental, size: 123636
18:13
Change the MEM_Dyn flag so that it means that Mem.xDel exists and must be used to free the string or blob. Add tighter invariant checks on Mem. file: [89a0ad3b] check-in: [44e1c337] user: drh branch: enhanced-mem-check, size: 108251
16:24
Factor the Mem invariant checker into a separate procedure (rather than a macro) so that it can be more easily extended. file: [2f97cd75] check-in: [354699d5] user: drh branch: enhanced-mem-check, size: 108275
14:45
Add extra assert() statements trying to catch a Mem object in an inconsistent state. file: [087e7c75] check-in: [4aeb3ae4] user: drh branch: enhanced-mem-check, size: 108256
2014-02-28
18:39
Update some test cases that deal with corrupt databases. file: [aad53458] check-in: [3a09f560] user: dan branch: experimental, size: 122230
09:48
Minor tweak to vdbeRecordCompareInt(). file: [fc953585] check-in: [284bde0e] user: dan branch: experimental, size: 122231
2014-02-27
20:44
Further changes to sqlite3VdbeRecordCompare(). file: [80e53159] check-in: [57089374] user: dan branch: experimental, size: 121511
2014-02-25
21:01
Attempt to speed up sqlite3VdbeRecordCompare() by various means. This code is in an interim state. file: [988269c6] check-in: [85206e0b] user: dan branch: experimental, size: 118581
2014-02-24
14:24
Remove an unused variable from the VDBE_PROFILE compile-time option. Keep the opcode count in an u32 instead of an int. file: [8b8eeb3c] check-in: [4df0ac90] user: drh branch: trunk, size: 108225
2014-02-17
22:40
Add logic to do test coverage measurements on the VDBE code. file: [0e01d6fd] check-in: [ce184c7b] user: drh branch: insert-optimization, size: 108143
01:13
Fix the VDBE_PROFILE logic. Add a script to process the output file. file: [9098973f] check-in: [7adb3da2] user: drh branch: trunk, size: 107735
2014-02-11
04:30
Sync the latest trunk changes, and in particular the STAT4 IS NOT NULL fix. file: [b02637a5] check-in: [b0067926] user: drh branch: sessions, size: 110146
2014-02-10
03:21
Faster and smaller implementation of sqlite3_value_type(). file: [dac6e571] check-in: [5708bc24] user: drh branch: trunk, size: 107467
2014-02-08
01:40
Change the OP_Trace opcode to OP_Init and give it the ability to jump to the initialization code at the bottom of the program, thus avoiding the need for an extra OP_Goto. file: [379343f1] check-in: [192dea97] user: drh branch: trunk, size: 107487
2014-02-07
13:20
Add the OP_Undef and OP_IsUndef opcodes. With these, use the first register in the result register range as the flag to indicate EOF on an INSERT from a SELECT, rather than allocating a separate boolean register for that task. file: [3fd95b22] check-in: [6fb74485] user: drh branch: coroutine-refactor, size: 108076
2014-01-28
18:06
Bring in the latest updates from trunk. file: [25e8ee3c] check-in: [7b5f3773] user: drh branch: sessions, size: 110749
2014-01-27
13:58
Fix (harmless) duplicate variable declaration. file: [a3327afa] check-in: [94ed9bc4] user: drh branch: trunk, size: 108070
2014-01-24
22:58
Fixes for various clang warnings. file: [f228f45f] check-in: [87bf6063] user: drh branch: trunk, size: 108078
14:05
Bring in all the latest trunk changes, including the Common Table Expressions implementation. file: [a980f781] check-in: [9b43e559] user: drh branch: sessions, size: 110628
2014-01-04
16:49
Omit OP_Close operations that occur immediately prior to OP_Halt and which cannot be jumped over. file: [9f4bfc52] check-in: [874b7e99] user: drh branch: trunk, size: 107949
2014-01-02
19:35
Avoid unnecessary affinity transformations when building indices using data from a table. file: [915fda7c] check-in: [10d85135] user: drh branch: trunk, size: 107756
2013-12-24
12:09
Merge the latest trunk changes into the sessions branch. file: [4dc5258a] check-in: [cfd110bf] user: drh branch: sessions, size: 110336
2013-12-23
19:09
Move elements of the Vdbe object that are only used during statement preparation out into the Parse object. file: [bc6799db] check-in: [c289a253] user: drh branch: trunk, size: 107657
2013-12-20
15:59
Combine adjacent single-register OP_Copy instructions into a single multi-register OP_Copy, where possible. Fix the Synopsis comment for multi-register OP_Copy instructions to show the correct register ranges. file: [6fb06077] check-in: [2ae22dc0] user: drh branch: trunk, size: 107418
2013-12-18
15:11
Show changes to the column cache when PRAGMA vdbe_addoptrace=ON is set. file: [70aa77f7] check-in: [4c6a659c] user: drh branch: column-cache-debug, size: 106615
2013-12-14
18:24
Merge in all recent preformance enhancements from trunk. file: [0ee1dc80] check-in: [32477642] user: drh branch: sessions, size: 108898
2013-12-13
16:23
Simplication and optimization of error message handling. file: [a22cbd91] check-in: [9d347f54] user: drh branch: trunk, size: 106219
2013-12-11
11:00
Fix harmless compiler warnings. file: [74f3ad06] check-in: [a7e5fcd6] user: drh branch: trunk, size: 106214
2013-12-10
21:38
Avoid unnecessary calls to sqlite3VdbeSerialType() from within sqlite3VdbeSerialPut(). file: [a66fde9e] check-in: [079c04a5] user: drh branch: trunk, size: 106231
2013-12-09
23:17
Simplifications to the OP_MakeRecord opcode and the sqlite3VdbeSerialPut() helper function. file: [d64bc2a0] check-in: [7277a769] user: drh branch: trunk, size: 106276
2013-12-07
20:39
If the SQLITE_ENABLE_CURSOR_HINTS macro is defined, then invoke the sqlite3BtreeCursorHint() interface to provide hints to the storage engine about rows that need not be returned. Hints can be disabled using SQLITE_TESTCTRL_OPTIMIZATIONS with SQLITE_CursorHints (0x2000). Cursor hints are not used by the built-in storage engine of SQLite but might be useful to applications that provide their own storage engine. The current code is work-in-progrss and contains bugs. file: [c7c9219c] check-in: [3a9bec52] user: drh branch: cursor-hints, size: 107469
2013-12-03
20:51
Merge in trunk changes. file: [e3228efe] check-in: [a2914d6b] user: drh branch: sessions, size: 109517
09:49
Add a "database_may_be_corrupt" directive to test file fuzz3.test. Reformat an assert() statement in vdbeaux.c to make its intent clearer. file: [09b79d47] check-in: [9d8a0e13] user: dan branch: trunk, size: 106838
2013-12-02
21:58
Merge all recent 3.8.2 beta changes from trunk. file: [aad7d171] check-in: [67c34ccf] user: drh branch: sessions, size: 109507
2013-11-29
15:39
Change the name of the CORRUPTIBLE macro to CORRUPT_DB. file: [5b58b242] check-in: [f865be10] user: drh branch: trunk, size: 106828
15:06
Add a new sqlite3_test_control() that indicates that database files are always well-formed. Use this during testing to enable assert() statements that prove conditions that are always true for well-formed databases. file: [28a791e1] check-in: [15e4f63d] user: drh branch: trunk, size: 106830
2013-11-28
14:14
Remove an assert() condition that may not be true if the database file is corrupt. Update a test case in corruptC.test. file: [91438d61] check-in: [0bcf7551] user: dan branch: trunk, size: 106752
2013-11-26
18:00
Merge in performance enhancements from trunk. file: [9270db47] check-in: [fc9ae839] user: drh branch: sessions, size: 109476
2013-11-25
22:24
Change a while-loop into a do-loop in sqlite3VdbeRecordCompare() and add an assert() to verify that the do-loop really is appropriate. This gives about a 10% performance boost in that routine, or a 0.9% boost overall. file: [a880c3c7] check-in: [011a6be4] user: drh branch: trunk, size: 106797
2013-11-21
21:59
Changes some offset and amount parameters from "int" to "u32" to avoid harmless signed/unsigned comparison warnings. file: [5251f178] check-in: [4e8c5d07] user: drh branch: trunk, size: 106749
03:12
Performance optimization to the OP_Next and OP_Prev opcodes. file: [648f7236] check-in: [ecaac28a] user: drh branch: trunk, size: 106749
01:04
Reduce the size of VdbeCursor again, this time without a performance hit. file: [bbf06ccb] check-in: [93393993] user: drh branch: OP_Column-refactor, size: 106697
2013-11-20
17:25
Refactoring the OP_Column opcode for improved performance and maintainability. file: [c5926099] check-in: [7c914e39] user: drh branch: OP_Column-refactor, size: 106682
2013-11-19
13:55
Minor performance improvement to sqlite3SerialTypeGet(). file: [91f9e1fb] check-in: [17e8524f] user: drh branch: trunk, size: 106690
2013-11-14
19:18
Merge the skip-scan optimization into the sessions branch. file: [eade21d5] check-in: [7596d1bf] user: drh branch: sessions, size: 109389
2013-11-13
17:58
Add the "PRAGMA vdbe_eqp" command, only available with SQLITE_DEBUG. Simplify some of the other debugging logic. file: [dd0f6ab9] check-in: [8ce33f4c] user: drh branch: trunk, size: 106710
2013-11-12
20:18
Minor enhancements to the auxiliary information added to EXPLAIN output with SQLITE_EXPLAIN_ENABLE_COMMENTS. file: [75c5fee3] check-in: [0d1328e3] user: drh branch: trunk, size: 106792
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: [f2905bb1] check-in: [5addd123] user: drh branch: sessions, size: 109478
16:55
Remove unreachable code, replacing it in most cases with assert() or NEVER() macros. file: [84d2d421] check-in: [924d63b2] user: drh branch: trunk, size: 106799
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: [faf5c3c9] check-in: [defd5205] user: drh branch: omit-rowid, size: 106788
2013-11-05
13:33
Standardize the error messages generated by constraint failures to a format of "$TYPE constraint failed: $DETAIL". This involves many changes to the expected output of test cases. file: [6508022e] check-in: [54b22192] user: drh branch: omit-rowid, size: 107370
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: [cf6d0bc6] check-in: [9b6d9e10] user: drh branch: omit-rowid, size: 107370
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: [717c8c2e] check-in: [1adfca60] user: drh branch: omit-rowid, size: 107042
2013-10-30
15:52
Make sure KeyInfo objects on multi-column indices of WITHOUT ROWID tables have the correct nField and nXField values. Also, add the SQLITE_ENABLE_MODULE_COMMENT compile-time option and the VdbeModuleComment() macro and use it to label entry and exit points of some key routines. file: [347cfece] check-in: [6d9af606] user: drh branch: omit-rowid, size: 107041
13:46
In the P4 column of the EXPLAIN listing, abbreviate "keyinfo" as just "k" and "BINARY" as just "B". file: [517c110b] check-in: [72d45eb7] user: drh branch: omit-rowid, size: 107025
02:37
Merge EXPLAIN enhancements from trunk. file: [4b01ac1c] check-in: [2fcac056] user: drh branch: omit-rowid, size: 106930
02:28
Add the SQLITE_ENABLE_EXPLAIN_COMMENTS compile-time option to enable extra commentary in the EXPLAIN output. Formerly, this was only available with SQLITE_DEBUG. file: [1cbff05c] check-in: [e1a89b56] user: drh branch: trunk, size: 107443
00:25
Enhanced display of register ranges in the auxiliary comments added to EXPLAIN. file: [24deeaf0] check-in: [d6b0c392] user: drh branch: trunk, size: 107258
2013-10-29
20:47
Import the automatic comment generating changes from trunk. file: [3c36d92d] check-in: [8bb51da1] user: drh branch: omit-rowid, size: 106093
20:40
Automatically generated comments on many VDBE opcodes when in SQLITE_DEBUG mode. Comments derive from the "Synopsis:" field added to each opcode definition in vdbe.c. file: [e670a2bd] check-in: [5f310c6a] user: drh branch: trunk, size: 106606
2013-10-26
13:36
Replace the OP_IsUnique opcode with OP_NoConflict. This code simplification might be useful to move onto trunk even if this branch is never merged. file: [4ccdfd27] check-in: [e6650e16] user: drh branch: omit-rowid, size: 104442
2013-10-23
13:30
Some inserts and queries working for multi-column primary keys and WITHOUT ROWID. file: [6d59c132] check-in: [b21d831b] user: drh branch: omit-rowid, size: 105001
2013-10-10
20:13
Synchronize with the trunk. file: [371a22e7] check-in: [136445ba] user: drh branch: sessions, size: 107634
2013-09-17
23:36
Clear the current time value on prepared statements when the prepared statement is reset. file: [55f4858f] check-in: [cebd6fc5] user: drh branch: trunk, size: 104955
2013-09-06
13:10
Combine the FuncDef.iPrefEnc and FuncDef.flags fields into a single new FuncDef.funcFlags field. file: [88beca92] check-in: [97b10e66] user: drh branch: trunk, size: 104932
2013-08-22
15:07
Merge in minor bug fixes and performance tweaks from trunk leading up to the version 3.8.0 release. file: [20ec92cd] check-in: [831492dc] user: drh branch: sessions, size: 107607
2013-08-21
17:35
If a virtual table xSync() returns an error message, copy it into a buffer allocated by sqlite3DbMalloc() before transfering it to Vdbe.zErrMsg. file: [c7fe2695] check-in: [854ba304] user: dan branch: trunk, size: 104928
2013-08-06
14:52
Merge in the latest changes from trunk. file: [6549864e] check-in: [69d5bed0] user: drh branch: sessions, size: 107121
07:45
More than double the speed of the resolveP2Values() routine in vdbeaux.c by moving from an extended if-else on every opcode to a switch. Opcodes are reordered in mkopcodesh.awk to put the switched opcodes close together, for additional performance and to reduce code footprint. file: [a6ea36a9] check-in: [924f7e4d] user: drh branch: trunk, size: 104442
2013-08-05
19:11
Factor all KeyInfo object allocations into a single function: sqlite3KeyInfoAlloc(). Always allocate enough space so that sqlite3VdbeRecordCompare() can avoid checking boundaries and hence run faster. file: [d5cdd5bd] check-in: [7301bedd] user: drh branch: trunk, size: 104221
15:32
Improve performance of sqlite3VdbeRecordCompare() by using an approximation that might give false negatives and only running the more expensive exact subexpression if the approximation fails. file: [1a149d40] check-in: [28979dcd] user: drh branch: trunk, size: 104520
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: [ef37cae6] check-in: [7e1acb39] user: drh branch: sessions, size: 106806
20:11
Add NEVER() and ALWAYS() macros on some unreachable yet prudent branches. file: [4389b369] check-in: [c5c0a8ab] user: drh branch: trunk, size: 104127
16:41
Add support for partial indices. file: [b04447e8] check-in: [478113f1] user: drh branch: trunk, size: 104163
2013-08-01
20:26
Fix a potential buffer overread in sqlite3VdbeRecordCompare() when a serial_type specifies a field that starts in bounds but is much too large for the allocated buffer. Mostly harmless. The overread is unlikely to go more than one or two bytes past the end of the buffer. file: [902bc99e] check-in: [e436b2f4] user: drh branch: trunk, size: 104158
19:17
Make sure signed integer overflow does not cause a segfault while attempting to read a corrupt database where the header size varint on a record is larger than the maximum 32-bit signed integer. file: [ca0c9d4b] check-in: [c3baca99] user: drh branch: trunk, size: 104164
12:21
Refactor internal function name sqlite3VdbeGetValue() to sqlite3VdbeGetBoundValue(). file: [492376bd] check-in: [81834c30] user: drh branch: partial-indices, size: 104164
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: [75206d58] check-in: [fb9044d1] user: drh branch: partial-indices, size: 104159
2013-07-18
17:12
Ensure that all auxiliary data registered by calls to sqlite3_set_auxdata() is destroyed when the VM is halted. Partial fix for [406d3b2ef9]. DRH adds: Stray text accidentally inserted into vdbe.c just prior to the commit breaks the build. file: [c01594ec] check-in: [71effa59] user: dan branch: typo, size: 104159
2013-07-11
15:03
Add the "defer_foreign_keys" pragma and the SQLITE_DBSTATUS_DEFERRED_FKS value for sqlite3_db_status(). This is a cherry-pick of a sequence of five checkins in the sessions branch between [1d44e5d3c2] and [d39e65fe70]. file: [1633408f] check-in: [527121ac] user: drh branch: trunk, size: 103783
12:19
Rename the SQLITE_DeferForeignKeys macro to shorter SQLITE_DeferFKs. Move the "defer_foreign_keys" pragma into the flagPragma() routine. file: [35846ced] check-in: [3a2ab74c] user: drh branch: sessions, size: 106462
2013-07-09
13:05
Pull in all the latest changes from trunk. file: [84f5fb7c] check-in: [af3ca4c6] user: drh branch: sessions, size: 106470
2013-07-05
16:54
Replace an erroneous SQLITE_OMIT_VIRTUAL_TABLE in vdbeaux.c with SQLITE_OMIT_WAL. Also fix some test script problems. file: [9683f262] check-in: [ff8c3f78] user: dan branch: trunk, size: 103627
2013-07-03
19:53
Experimental change to the handling of foreign key constraint violations when applying a changeset: all foreign keys, immediate and deferred, are deferred until the end of the transaction (or sub-transaction) opened by the sqlite3changeset_apply(). A single call to the conflict-handler (if any) is made if any FK constraint violations are still present in the database at this point. The conflict-handler may choose to rollback the changeset or to apply it, constraint violations and all. file: [2e82e249] check-in: [1d44e5d3] user: dan branch: sessions, size: 105865
2013-06-28
19:41
Allow read transactions to be freely opened and closed by SQL statements run from within the implementation of user-functions if the user-function is called by a SELECT statement that does not access any database tables (e.g. "SELECT user_function();"). file: [4a0fe1f4] check-in: [f308c485] user: dan branch: trunk, size: 103636
01:24
Refactor the Vdbe.noIO field as Vdbe.bIsReader. The meaning is inverted. file: [00674a9b] check-in: [59f98c5c] user: drh branch: trunk, size: 103415
2013-06-27
23:54
Refactor names of fields in the sqlite3 object: "activeVdbeCnt" becomes "nVdbeActive". Related fields becomes "nVdbeRead", "nVdbeWrite", and "nVdbeExec". file: [70d850cc] check-in: [14f79696] user: drh branch: trunk, size: 103396
17:40
Make sure that sqlite3_stmt_readonly reports false for PRAGMA journal_mode and PRAGMA wal_checkpoint. Ticket [a589ec069e3]. Also keep track of whether a prepared statement does no reading or writing. file: [727ad606] check-in: [1937fd8e] user: drh branch: trunk, size: 103385
2013-06-26
13:31
Bring the sessions branch up-to-date with all the latest trunk changes. file: [a0418e1e] check-in: [086a1272] user: drh branch: sessions, size: 105701
2013-05-28
12:11
Many small harmless comment changes. Removal of obsolete comments and fixing misspelled words. No changes to code. file: [af9cd937] check-in: [a0d5cc93] user: drh branch: trunk, size: 103022
2013-04-09
19:19
Check in the instrumented code for the mptest test case that appears to show a spontaneously disappearing journal file. file: [1521655b] check-in: [96f04d99] user: dan branch: missing-journal-file, size: 103062
2013-03-28
01:19
Merge the changes for the 3.7.16.1 release candidate into the sessions branch. file: [426263e9] check-in: [ee35a897] user: drh branch: sessions, size: 105700
2013-03-21
21:20
Many spelling fixes in comments. No changes to code. file: [ecb43014] check-in: [6f6e2d50] user: mistachkin branch: trunk, size: 103021
2013-03-13
11:42
Fix a compiler warning in sqlite3VdbePreUpdateHook(). Add sqlite3session.c to the amalgamation. Fix the Makefile.in to work with sessions. file: [b49b277b] check-in: [e54b0225] user: drh branch: sessions, size: 105697
2013-02-13
13:42
Enhancements to the query planner to make use of indices for ORDER BY even when IN constraints are in the WHERE clause. Add extended error codes for all SQLITE_CONSTRAINT errors. file: [684c1591] check-in: [7e14dc73] user: drh branch: sessions, size: 105692
2013-02-09
13:58
Add extended error codes for constraint errors. file: [735a6905] check-in: [54611046] user: drh branch: constraint-error-codes, size: 103018
2013-01-29
19:14
New debugging pragmas: PRAGMA vdbe_debug=ON is short-hand for the sql_trace, vdbe_listing, and vdbe_trace pragmas. PRAGMA vdbe_debug enables tracing of sqlite3VdbeAddOp() calls. None of this is active unless compiled with SQLITE_DEBUG. file: [8b5d13a2] check-in: [ae565ff3] user: drh branch: trunk, size: 102960
2013-01-28
19:00
Issue an error message and quit (rather than overflowing a reference counter) if the number of references to a table exceeds the maximum due to nested UNION views. Fix for ticket [d58ccbb3f1]. file: [ec83f5db] check-in: [c2462a95] user: drh branch: trunk, size: 103176
2013-01-25
02:10
Enhancements to the query planner to exploit transitive relationships in the WHERE clause, and other minor changes to bring the sessions branch into alignment with the trunk. file: [570714c7] check-in: [82d3d1ae] user: drh branch: sessions, size: 105855
2013-01-23
18:44
Fix a double-free() call that can occur when SQLITE_ENABLE_TREE_EXPLAIN is defined. file: [7c323149] check-in: [5bfb5967] user: drh branch: trunk, size: 103181
2012-12-08
23:37
Pull the latest trunk changes into the sessions branch, and in particular the collating-sequence refactorization. file: [0ce759dc] check-in: [4f6d69ae] user: drh branch: sessions, size: 105850
21:36
Adjustments to the collating-sequence refactoring to facilitate full-coverage testing and to fix some minor issues found by TH3. file: [7658c5d9] check-in: [cdbfa664] user: drh branch: ticket-71e333e7, size: 103176
2012-12-06
20:19
Cherrypick [557c69055a3] and [0064bab7714] (OP_Once-related fixes for triggers). file: [15b1ef21] check-in: [0d7b5d45] user: dan branch: branch-3.7.9, size: 103343
2012-12-05
14:31
Make sure memory is freed using a routine that is compatible with the routine used to allocate the memory. The SQLITE_MEMDEBUG compile-time option enforces this. file: [f68a1243] check-in: [9f6c6885] user: drh branch: trunk, size: 103273
2012-12-03
17:04
Make sure that the optimization that set the maximum column that will be used on a particular query does not mistakenly change an opcode other than OP_OpenRead or OP_OpenWrite. In particular, make sure it does not overwrite the P4 field of an OP_SorterOpen. file: [2d1b3ee6] check-in: [b0c1ba65] user: drh branch: trunk, size: 103278
2012-11-27
21:56
Update the sessions branch to include the SQLLOG enhancement, the SQLITE_IOERR_DELETE_NOENT fix, and a fix for the number-of-documents bug in FTS4. file: [b8f2a0cb] check-in: [ba8d08b6] user: drh branch: sessions, size: 105890
2012-11-26
19:50
Add an option to register global hooks used for logging all SQL executed by an application. file: [552a878f] check-in: [cd501bbc] user: dan branch: sqllog, size: 103216
2012-10-30
21:03
Pull all the latest trunk enhancements into the sessions branch. file: [5f53f96c] check-in: [fce667f2] user: drh branch: sessions, size: 105271
2012-10-26
00:11
Make sure all virtual table cursors have been closed on a prepared statement prior to unlinking the perpared statement from its database connection. file: [8c8cfd30] check-in: [f7c5abe8] user: drh branch: deferred-close-order, size: 102597
2012-10-09
14:58
Merge the latest trunk changes, especially the ORDER BY optimizer enhancements but also other fixes, onto the sessions branch. file: [1005a2ea] check-in: [f1fbb8c5] user: drh branch: sessions, size: 105193
2012-10-05
19:43
Fix a problem in shared-cache mode where a COMMIT statement might cause a busy-handler belonging to a shared-cache connection other than the current writer to be invoked. file: [674e969e] check-in: [e0c889d6] user: dan branch: trunk, size: 102519
2012-09-28
13:05
Merge the latest trunk changes (especially "PRAGMA busy_timeout" and the ORDER BY query planner optimizations) into the sessions branch. file: [857c8372] check-in: [6ca8eae1] user: drh branch: sessions, size: 105133
10:57
Merge the latest trunk changes (PRAGMA busy_timeout and the ORDER BY query planner enhancements) into the apple-osx branch. file: [a709b258] check-in: [6a5c59dd] user: drh branch: apple-osx, size: 102480
2012-09-17
17:16
Make sure the KeyInfo.aSortOrder array is always allocated so that we never have to test for KeyInfo.aSortOrder==0 in performance-critical loops. file: [fac025c7] check-in: [45793f0b] user: drh branch: trunk, size: 102459
15:36
Performance enhancement in the sqlite3VdbeSerialType() routine. file: [aeeee6c9] check-in: [ad298f52] user: drh branch: trunk, size: 102397
2012-08-31
14:23
Update with latest trunk changes. file: [797201e1] check-in: [87995dc9] user: dan branch: sessions, size: 104997
14:10
Merge in latest trunk changes. file: [a3423091] check-in: [bc9b9cd0] user: dan branch: apple-osx, size: 102430
2012-08-25
10:01
Fix all known instances of 'repeated the' style typos in comments. No changes to code. file: [9c293fd3] check-in: [9b19b847] user: mistachkin branch: trunk, size: 102409
01:38
Merge all the latest trunk changes into the apple-osx branch. file: [5c738e03] check-in: [6723add4] user: drh branch: apple-osx, size: 102434
2012-08-22
15:16
Do not let the multi-core sorter use lookaside memory, which is not thread-safe. file: [84bd1535] check-in: [acdc7d12] user: drh branch: threads-sort-ex1, size: 102406
2012-08-15
16:21
Merge all the latest trunk changes into the sessions branch. file: [91923b78] check-in: [fc07a479] user: drh branch: sessions, size: 105001
2012-06-02
14:32
The sqlite3_close() interface returns SQLITE_OK even if there are outstanding sqlite3_stmt and sqlite3_backup objects. The connection becomes a zombie. Resource deallocation is deferred until the last sqlite3_stmt or sqlite3_backup object closes. This is intended to help SQLite play nicer with garbage collectors. file: [dce80038] check-in: [e276a02b] user: drh branch: deferred-close, size: 102413
2012-05-27
00:11
Fix corner-case problems with shared-cache for in-memory databases. file: [3d97b738] check-in: [997ef5f6] user: drh branch: shared-cache-memdb, size: 102254
2012-04-19
20:43
Update the apple-osx branch so that it includes all of the latest trunk changes. file: [88b9df24] check-in: [b72f07b4] user: drh branch: apple-osx, size: 102391
2012-04-18
01:41
Import all the latest trunk changes into the sessions branch. file: [dcff925e] check-in: [87a0eab5] user: drh branch: sessions, size: 104958
2012-03-31
09:59
Fix a bug in the EXPLAIN code for listing trigger programs that was causing an out-of-bounds read. file: [d52c8a42] check-in: [c9342ca5] user: dan branch: trunk, size: 102370
2012-03-05
16:39
Pull in all the latest trunk changes. file: [dfaa1694] check-in: [504bf490] user: drh branch: apple-osx, size: 102385
16:26
Merge in the latest trunk changes. file: [2803275c] check-in: [ff86875c] user: drh branch: sessions, size: 104952
2012-02-13
17:01
Add the new SQLITE_ABORT_ROLLBACK extended error code to be returned for statements that are cancelled due to a rollback. file: [79cf42b7] check-in: [549f4fd0] user: drh branch: nonblocking-rollback, size: 102364
16:43
Change the ROLLBACK command so that pending statements to not block it. The pending statements instead return SQLITE_ABORT upon next access. Note: This causes separate shared-cache connections in read_uncommitted mode to abort as well. file: [dce061e4] check-in: [9b66c79e] user: drh branch: nonblocking-rollback, size: 102337
13:44
Generalize the interrupt mechanism so that individual statements can be interrupted and so that codes other than just SQLITE_INTERRUPT can be returned as a consequence of an interrupt. file: [63ff98c1] check-in: [922bcbb4] user: drh branch: generalize-interrupt, size: 103370
2012-02-10
18:18
Pull the latest trunk changes into the apple-osx branch. file: [41cf1fc6] check-in: [e2485986] user: drh branch: apple-osx, size: 103378
17:54
Pull all the latest trunk changes into the sessions branch. file: [b7c245fe] check-in: [361fb66a] user: drh branch: sessions, size: 105945
2012-02-01
19:03
Very small performance enhancement and reduction in size of the sqlite3_stmt object. file: [7683d772] check-in: [a38d57a4] user: drh branch: trunk, size: 103357
2012-01-25
20:43
Only invalidate the schema when the OP_ParseSchema opcode fails, not on any general failure of a vdbe program. file: [e8cf7b25] check-in: [11f68d99] user: drh branch: trunk, size: 103473
2012-01-14
14:13
Merge the latest trunk changes into the apple-osx branch. file: [819a6b2b] check-in: [2cc414cd] user: drh branch: apple-osx, size: 103724
2012-01-05
13:02
Merge all of the latest trunk changes into the sessions branch. file: [ca1eada4] check-in: [a9bcb432] user: drh branch: sessions, size: 106291
2012-01-04
12:57
Fix typos and comments and make minor changes to a few function names, as suggested by readership. file: [eb13a691] check-in: [e9d05cbb] user: drh branch: trunk, size: 103703
2012-01-03
21:54
Pull all the latest trunk changes over into the apple-osx branch. file: [9dd6bfd0] check-in: [8a048423] user: drh branch: apple-osx, size: 103648
14:50
Make sure filenames passed into sqlite3OsOpen() always have the extra zero-terminators needed by sqlite3_uri_parameter(). file: [01fe6e35] check-in: [d73e93cf] user: drh branch: trunk, size: 103627
2012-01-01
13:58
Tweaks to improve testability. file: [6b6c7aca] check-in: [e3a929e4] user: drh branch: trunk, size: 103626
2011-12-16
15:11
Improved logging of master-journal name conflicts. file: [3015179b] check-in: [b1005ef4] user: drh branch: trunk, size: 103549
13:42
Merge the nx-devkit changes into trunk. file: [4a96cdde] check-in: [cf3bccc2] user: drh branch: trunk, size: 103402
01:30
Call sqlite3_log() with an appropriate message if unable to find a unique master-journal filename. file: [52ebf2a6] check-in: [e9177f7d] user: drh branch: nx-devkit, size: 102900
01:21
A better solution to being unable to find a unique master-journal filename: just delete an existing master-journal and reuse it. file: [7bae4d94] check-in: [2685c2b9] user: drh branch: nx-devkit, size: 102829
00:33
Make sure the antipenultimate character of master-journal filenames is a "9" in order to avoid collisions with other files in 8+3 filename mode. Also, limit the number of attempts at finding a unique master-journal filename. file: [896ce3c4] check-in: [34a04836] user: drh branch: nx-devkit, size: 102805
2011-12-10
15:55
Import the experimental parse-tree explainer, with fixes, from the tree-explain branch. Disabled by default. Use SQLITE_ENABLE_TREE_EXPLAIN to turn it on. file: [61a3cc2b] check-in: [bcbc7152] user: drh branch: trunk, size: 102884
14:44
Merge the latest trunk changes into tree-explain branch. file: [1b99a1f6] check-in: [1a360da0] user: drh branch: tree-explain, size: 102860
2011-12-09
17:51
Remove an unnecessary condition. file: [ff5eefb4] check-in: [d9ba023c] user: drh branch: uninit-vdbe-mem, size: 102750
17:38
Remove an unnecessary initialization of Vdbe.aOnceFlag. file: [71a0cd6a] check-in: [421714da] user: drh branch: uninit-vdbe-mem, size: 102769
16:21
Make no assumptions about the initial state of VDBE registers. file: [d9d406ae] check-in: [521d72bd] user: drh branch: uninit-vdbe-mem, size: 102829
13:24
Modify the OP_Once opcode so that it works correctly in trigger sub-programs. This is a candidate fix for [7bbfb7d442]. file: [cdd74a86] check-in: [557c6905] user: dan branch: trunk, size: 102725
2011-12-08
21:08
Merge the latest trunk changes into the apple-osx branch. file: [ab25ef4d] check-in: [59e0d4f3] user: drh branch: apple-osx, size: 102403
2011-12-06
19:44
Begin adding the data-structure explaining subsystem. All is contained within file: [ed720512] check-in: [79ae51c5] user: drh branch: tree-explain, size: 102473
2011-11-16
16:23
Remove code made obsolete by the changes to index processing that allow range search on the rowid. file: [45713a5f] check-in: [a5418c7f] user: drh branch: trunk, size: 102382
15:41
Fix an invalid assert() statement added by [3b58f5f066]. file: [3ff5f59d] check-in: [888b09dd] user: dan branch: trunk, size: 102956
15:27
Where possible, take advantage of the rowid at the end of index records to optimize range constraints (<, >, <=, >=) on the rowid column. file: [17bee21d] check-in: [3b58f5f0] user: dan branch: trunk, size: 102957
2011-10-31
14:42
Pull the latest trunk changes into the apple-osx branch. file: [dfe420be] check-in: [4fa9ee79] user: drh branch: apple-osx, size: 102977
14:34
Merge in all changes found in the version 3.7.9 release candidate. file: [6836b38d] check-in: [23580718] user: drh branch: sessions, size: 105544
2011-10-29
01:33
Avoid reporting a NOMEM error if a memory allocation fails while copying the error message from a prepared statement into the database connection. file: [a950e344] check-in: [dcb78793] user: drh branch: trunk, size: 102956
2011-10-27
15:19
If an error occurs within sqlite3_step() on a statement prepared using sqlite3_prepare_v2(), transfer both the error code and error message to the database handle before sqlite3_step() returns (so that they are available via sqlite3_errcode() and sqlite3_errmsg(). Prior to this commit, only the error code was transfered. The error message was not available until after either sqlite3_reset() or sqlite3_finalize() had been called on the statement handle. file: [9cb5c1a8] check-in: [8f88cc4e] user: dan branch: trunk, size: 102879
2011-10-21
17:18
Merge the latest trunk changes into the apple-osx branch. file: [a76f50a5] check-in: [be62ef05] user: drh branch: apple-osx, size: 102531
17:08
Merge the latest trunk enhancements into the sessions branch. file: [c2e9565d] check-in: [8baef581] user: drh branch: sessions, size: 105098
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: [5bd4886b] check-in: [60fee957] user: drh branch: trunk, size: 102510
2011-10-11
14:19
Merge the latest trunk changes into the apple-osx branch. file: [1387589c] check-in: [7e2c4898] user: drh branch: apple-osx, size: 102612
12:58
Merge all the latest trunk changes into the sessions branch - especially the SQLITE_ENABLE_STAT3 enhancements. file: [2339c8c4] check-in: [403431ca] user: drh branch: sessions, size: 105179
2011-10-10
23:53
Forward port the Apple-specific changes from [db5b7b778c] in the apple-osx-377 branch. Fix this up so that it will compile and run on Linux. file: [669fe607] check-in: [6cb43f6c] user: drh branch: apple-osx, size: 102575
22:11
Merging in cherry picked diffs for persist wal, alloc padding, wal-safe vacuum and sqlite3_file_control based lockstate checking file: [cfb5207d] check-in: [db5b7b77] user: adam branch: apple-osx-377, size: 102380
18:59
Cherrypick the sqlite_data_count() changes from [d4f95b3b6e] and [9913996e7b] into the apple-osx branch for version 3.7.7. file: [ebe8ca77] check-in: [aef7945c] user: drh branch: apple-osx-377, size: 102359
2011-10-07
18:24
Make sure sqlite3_data_count() behaves as documented, even for EXPLAIN QUERY PLAN queries. file: [b4d50974] check-in: [d4f95b3b] user: drh branch: trunk, size: 102591
12:59
Enhance the sqlite3_data_count() routine so that it can be used to determine if SQLITE_DONE has been seen on the prepared statement. file: [9542e2fb] check-in: [9913996e] user: drh branch: trunk, size: 102563
2011-09-16
19:40
Merge the latest trunk changes into the sessions branch. file: [61701754] check-in: [5efb0294] user: drh branch: sessions, size: 105093
19:29
Merge all the latest trunk changes into the experimental STAT3 branch. file: [461e3e39] check-in: [51908c8f] user: drh branch: stat3-trunk, size: 102542
01:34
Add the new OP_Once opcode. Use it to clean up and simplify various one-time initialization sections in the code, including the fix for ticket [002caede898ae]. file: [49be7a5c] check-in: [7f00552b] user: drh branch: tkt-002caede898, size: 102505
2011-09-14
19:41
Merge latest changes from the trunk into the sessions branch. file: [b09cc163] check-in: [c00e45ed] user: dan branch: sessions, size: 105149
18:19
Remove 'const' from a variable that might actually be written when an OOM error occurs. Also, fix a couple MSVC/Win32 compiler warnings. file: [ca8aa399] check-in: [3035dc1c] user: mistachkin branch: trunk, size: 102561
2011-09-13
19:09
Merge the latest trunk changes into the stat3-trunk branch. file: [316409c6] check-in: [11ca4ed8] user: drh branch: stat3-trunk, size: 102604
2011-09-05
20:16
Fix a minor performance regression in btreeMoveto(). file: [079d37d4] check-in: [d0712dfb] user: dan branch: trunk, size: 102567
14:20
Refactor the sqlite3VdbeRecordUnpack() interface to better accommodate the vdbesort.c module. file: [8546b948] check-in: [f115b230] user: dan branch: trunk, size: 102569
2011-09-01
15:32
Experimental code-generator changes to utilize new opcodes for sorting. file: [e58acbc5] check-in: [bab2e560] user: drh branch: merge-sort, size: 102631
2011-08-28
00:19
Correctly display P4_ADVANCE values on opcode traces. Mark an always-taken branch in OP_Column as such. file: [de1e4cab] check-in: [087dc960] user: drh branch: experimental, size: 102606
2011-08-27
18:48
Experimental changes to improve the performance of OP_Next. file: [dd5d10ae] check-in: [1a249845] user: dan branch: experimental, size: 102544
2011-08-26
19:20
Merge the latest trunk changes into the sessions branch. file: [4b5f0e80] check-in: [eb036d6f] user: drh branch: sessions, size: 104425
13:52
Merge branches branch-3.7.2 and stat3-enhancement into a new branch for testing purposes. file: [a42e8b2e] check-in: [0df04f92] user: drh branch: stat3-3.7.2, size: 100026
13:16
Merge the stat3-enhancement branch with trunk, but keep the resulting merge in a separate branch for now. file: [1bd0fbea] check-in: [63f2c785] user: drh branch: stat3-trunk, size: 102361
2011-08-24
15:12
Fix some harmless compiler warnings. file: [11b0df88] check-in: [46f5a68b] user: drh branch: trunk, size: 102324
2011-08-16
02:07
Allow the sqlite3VdbeJumpHere() routine to accept a negative or zero address if a prior memory allocation error has occurred. The new sqlite_stat3 logic needs this. file: [05eb4457] check-in: [9650d796] user: drh branch: stat3-enhancement, size: 102365
2011-07-22
12:49
Merge the latest trunk changes into the sessions branch. file: [7d0b75a0] check-in: [110cfd69] user: drh branch: sessions, size: 104429
2011-07-12
14:28
Experimental support for speeding up CREATE INDEX commands using an offline merge sort. file: [8fb978eb] check-in: [30dbf0fe] user: dan branch: experimental, size: 102366
2011-07-11
19:45
Modifications so that the sessions extension works with blob handles. file: [bb86d48c] check-in: [82ac16c4] user: dan branch: sessions, size: 104411
2011-06-27
00:01
Make sure all new statements begin life unexpired, even if they registered functions or did other actions during preparation that would have expired all statements. Fix for ticket [25ee81271091] file: [4d100407] check-in: [faa38c87] user: drh branch: trunk, size: 102328
2011-06-20
10:44
Merge the latest trunk changes into the sessions branch. file: [db3d4eed] check-in: [4c5e276c] user: drh branch: sessions, size: 104299
2011-06-03
20:11
Create and use a function especially for adding the ParseSchema opcode. This gives a small reduction in code and a small performance increase. file: [0b2e2880] check-in: [957b2ab6] user: drh branch: trunk, size: 102310
2011-06-01
18:15
Refactor the SQL parameter processing so that parameter names for values that are optimized out of the prepare statement are not forgotten. file: [0505dc4f] check-in: [b3aaf715] user: drh branch: trunk, size: 102004
2011-05-30
23:42
Minor performance improvements. file: [99900868] check-in: [f9950c6a] user: drh branch: trunk, size: 101490
13:39
Merge the latest trunk changes into the sessions branch. file: [8c5a643b] check-in: [832886b1] user: drh branch: sessions, size: 103399
2011-05-25
01:16
Changes to savepoint in virtual tables for simpler and more consistent operation. file: [07a5226a] check-in: [92f26a8b] user: drh branch: trunk, size: 101410
2011-05-19
02:48
Merge all the latest trunk changes into the sessions branch, especially the disappearing WAL transaction fix. file: [be135f46] check-in: [5b1b536c] user: drh branch: sessions, size: 103713
2011-05-17
20:36
Add the ability to limit filenames to 8+3 using the SQLITE_ENABLE_8_3_NAMES compile-time option together with a URI parameter of "8_3_names=1". file: [53585121] check-in: [96d60985] user: drh branch: trunk, size: 101724
2011-05-05
15:46
Merge the latest trunk changes into the sessions branch. file: [cc95d80b] check-in: [6883580e] user: drh branch: sessions, size: 103667
2011-05-04
17:23
Merge vtab-conflict branch with trunk. file: [25aa5ba7] check-in: [8f9666af] user: dan branch: trunk, size: 101678
2011-04-27
01:00
Fix a comment typo. file: [5b815011] check-in: [19c6625a] user: drh branch: trunk, size: 101425
2011-04-26
19:21
Extra tests for fts3. And fixes for conflict-handling related problems in fts3. file: [5c4cd4be] check-in: [fb4a3558] user: dan branch: vtab-conflict, size: 101676
2011-04-06
22:33
Merge in the latest changes from the trunk. file: [b0a2a184] check-in: [435b57dc] user: drh branch: sessions, size: 103412
22:05
Fix a performance regression: Keep two btree masks in each prepared statement; one for btrees used and another for btrees that require locks. Only try to lock the btrees identified by the second mask. file: [9ae5074b] check-in: [614de91a] user: drh branch: trunk, size: 101423
2011-04-05
22:13
Merge the latest trunk changes into the sessions branch. file: [88671caa] check-in: [45f20261] user: drh branch: sessions, size: 103131
22:08
Suppress many harmless compiler warnings, mostly signed/unsigned comparisons within asserts or unused parameters in extensions. file: [3170e917] check-in: [3eeb0ff7] user: drh branch: trunk, size: 101142
17:31
Remove the mutex counter and the logic that attempts to verify that btree mutexes are held continuously. We are not making that assumption at this time. file: [64304e50] check-in: [242ce7cf] user: drh branch: trunk, size: 101137
13:27
Pull the latest trunk changes (and hence the schema-parse-refactor changes) into the sessions branch. file: [12765fca] check-in: [03ca8342] user: drh branch: sessions, size: 105006
2011-04-04
13:19
Merge the latest changes of trunk into the session branch. file: [15eff6a3] check-in: [95d53c44] user: drh branch: sessions, size: 105005
13:07
Merge in the latest changes from trunk. file: [e1ea6edc] check-in: [47b79c40] user: drh branch: schema-parse-refactor, size: 103017
03:27
Suppress unused parameter warnings in sqlite3VdbeEnter() and related routines. file: [010e4e67] check-in: [f8e98ab3] user: drh branch: trunk, size: 103016
00:14
Remove the BtreeMutexArray object - use the Vdbe.btreeMask field to accomplish the same result. Add a generation counter to btree mutexes in order to assert that mutexes are never temporarily dropped over a range of instructions in order to do deadlock avoidance in some subroutine. Lock all btrees in any Vdbe program that uses OP_ParseSchema. file: [1a98cc95] check-in: [d81708f7] user: drh branch: trunk, size: 102900
2011-04-03
18:19
Make sure that the constant 1 is cast to yDbType before shifting to create an attached database mask. This check-in is a follow-up and fix to the [7aaf8772274422] change that increases the maximum number of attached databases from 30 to 62. file: [ad921cf5] check-in: [e2a09ea7] user: drh branch: trunk, size: 100497
2011-04-02
20:08
Merge in the latest changes from trunk. file: [f4b4a7dc] check-in: [0d99229a] user: drh branch: schema-parse-refactor, size: 100494
20:01
Change the name of the "tAttachMask" datatype to "yDbMask". file: [80ed78c8] check-in: [3d6f2e82] user: drh branch: trunk, size: 100493
16:28
Begin a series of changes designed to reduce the scope and frequency of invalidating schemas. Design goals are that the internal schema should never be deleted out from under a prepared statement that is running and that all prepared statements should be expired if the schema is invalidated. At the same time, minimize the number of schema invalidations. This change merely revises the sqlite3ResetInternalSchema() function to use -1 as the wildcard for "all" rather than 0, so that we can reset the main schema independently of all the others. file: [e97565fb] check-in: [6a8ad6e3] user: drh branch: schema-parse-refactor, size: 100502
2011-04-01
15:43
Merge latest trunk changes. file: [0dcfffca] check-in: [d184cf00] user: dan branch: sessions, size: 102490
01:38
Fix a compiler warning and an unreachable branch. Restore 100% branch test coverage. file: [77921792] check-in: [4dc148bb] user: drh branch: trunk, size: 100501
2011-03-30
21:04
Add the SQLITE_ENABLE_PREUPDATE_HOOK compile-time option. file: [b526e30d] check-in: [66345214] user: drh branch: sessions, size: 102469
14:54
Do not generate sqlite_stat1 entries for empty tables when running ANALYZE. Ticket [83ea97620bd31016451] file: [d3e8be6f] check-in: [3a27af5b] user: drh branch: trunk, size: 100494
02:03
Merge in all the latest changes from trunk. file: [051a1609] check-in: [b11d941e] user: drh branch: sessions, size: 102401
2011-03-29
15:40
Fix a problem whereby following an IO error in CommitPhaseTwo() of a multi-file transaction the b-tree layer could be left in TRANS_WRITE state, causing problems later on. file: [9211dfa7] check-in: [dbe569a0] user: dan branch: trunk, size: 100480
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: [af3be34b] check-in: [9c3a6e47] user: drh branch: sessions, size: 102395
18:22
Increase the upper bound on SQLITE_MAX_ATTACHED from 30 to 62. file: [cfd3f3ac] check-in: [7aaf8772] user: drh branch: trunk, size: 100474
2011-03-19
08:38
Fix a problem with INTEGER PRIMARY KEY columns and the pre-update hook. file: [0216b2c3] check-in: [24d4d5dd] user: dan branch: sessions, size: 102379
2011-03-18
16:47
Fixes for compiler warnings. Minor code cleanup. file: [9807ae2e] check-in: [9604d130] user: drh branch: sessions, size: 102253
15:13
Fix a memory allocation issues in the preupdate hook so that the hook.test script runs clean in valgrind. file: [bb194e12] check-in: [bd94f4c8] user: drh branch: sessions, size: 102206
12:35
Merge all the latest trunk enhancements into the sessions branch. file: [ce48afec] check-in: [94fd5bb6] user: drh branch: sessions, size: 102192
2011-03-16
19:59
Add the sqlite3_preupdate_new() API, for retrieving the new.* values from within a pre-update callback. file: [896844f9] check-in: [526545c4] user: dan branch: sessions, size: 102037
09:49
Remove the sqlite3_transaction_hook() API. file: [f789da7d] check-in: [b0015a1c] user: dan branch: sessions, size: 101616
2011-03-08
19:22
Add start of sessions feature. file: [9ba08ed7] check-in: [269a81a3] user: dan branch: sessions, size: 101961
2011-03-06
21:54
Another minor simplification brought to light by clang. file: [00439455] check-in: [3bfbf026] user: drh branch: trunk, size: 100458
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: [3ce2588f] check-in: [04abab71] user: drh branch: trunk, size: 100470
2011-03-03
20:06
Add the experimental sqlite3_transaction_hook() API. file: [cc817d85] check-in: [093d8cd8] user: dan branch: sessions, size: 101854
2011-03-01
18:42
Add the experimental sqlite3_preupdate_hook() API. file: [874e1696] check-in: [6145d7b8] user: dan branch: sessions, size: 101509
2011-02-12
05:34
Fix problems in the backport, reducing the number of errors in the TCL tests to just a few dozen. Most of the remaining errors seem to be real and desirable changes of behavior. file: [157d62a6] check-in: [9d2b0af2] user: drh branch: branch-3.7.2, size: 99968
2011-02-11
22:54
Add a NEVER() around a test that is believed to always be false. file: [5936a596] check-in: [f7e2ea33] user: drh branch: trunk, size: 100331
2011-01-24
16:00
Ensure that if a deferred FK constraint is violated by a statement that creates its own implicit transaction, the statement is not an "active-write" after sqlite3_step() returns. file: [521b954f] check-in: [8063197e] user: dan branch: deferred-fk-quirk, size: 100324
2010-12-08
18:30
Update the sqlite3_stmt_readonly() interface so that its output is well-defined for all prepared statements, and so that it gives the correct result for VACUUM. file: [33448d23] check-in: [9c19b7ae] user: drh branch: trunk, size: 100140
2010-12-01
08:04
Avoid recursive calls to sqlite3VdbeMemRelease() when deleting VM frames used by trigger programs. file: [b810a669] check-in: [119ffe95] user: dan branch: trunk, size: 100117
2010-11-08
19:01
Experimental changes to EXPLAIN QUERY PLAN. file: [762c2b14] check-in: [f4747eb8] user: dan branch: experimental, size: 99984
2010-08-31
01:09
Remove unreachable branches to facilitate test coverage. file: [de0b06b1] check-in: [86bcb9aa] user: drh branch: trunk, size: 100023
2010-08-12
11:25
Add coverage tests for pager.c. file: [c73bcefc] check-in: [228c5b16] user: dan branch: trunk, size: 100007
2010-07-30
18:40
If a database becomes corrupted such that an index is out of sync with its table, make sure the corruption is detected and reported back. Do not assume that indices always contain rowids for valid table rows. file: [e18a42d0] check-in: [83395a3d] user: drh branch: trunk, size: 99478
10:09
Add the test cases for bug [f3e5abed55]. file: [8a443e73] check-in: [cbbaf8e6] user: dan branch: experimental, size: 99554
10:02
Make sure a connection has an exclusive lock on all database files involved in a multi-file transaction before writing the master-journal pointer into any journal files. Fix for [f3e5abed55]. file: [bb14feb1] check-in: [50c0f220] user: dan branch: experimental, size: 99523
2010-07-26
14:20
Further fixes to the P4_MEM size measurement logic. file: [77442ab4] check-in: [934cda29] user: drh branch: experimental, size: 99444
13:58
Fix an issue with P4_MEM and the schema size measurement logic. Also fix a compiler warning. file: [7564dc5c] check-in: [8166f338] user: drh branch: experimental, size: 99392
12:38
Make sure sqlite3_free() is not called for P4_MPRINTF during a size measurement. file: [30fa2472] check-in: [56f11f88] user: drh branch: experimental, size: 99270
12:05
Change the way SubProgram objects are deleted so that the code is the same for deletion and measurement. file: [41a4b2f9] check-in: [00e55102] user: dan branch: experimental, size: 99244
11:07
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). file: [1616d797] check-in: [629e38a8] user: drh branch: experimental, size: 100150
2010-07-24
16:34
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and all memory from sqlite3_malloc() is freed by sqlite3_free(). file: [e102e50a] check-in: [ac1f37a6] user: drh branch: malloc-enhancement, size: 99176
11:28
Experimental code to measure memory consumed by database schemas and prepared statements. file: [9f18d228] check-in: [9aa30342] user: dan branch: experimental, size: 100093
2010-07-02
18:44
Take out the incomplete initializer on the constant "dummy" in sqlite3VdbeGetOp(). Add a comment that the MSVC warning there should be ignored. file: [7f99c1f0] check-in: [452ccaa9] user: drh branch: mistake, size: 99119
18:15
Fix a couple more compiler warnings under MSVC. file: [10d14b40] check-in: [26bc27e3] user: shaneh branch: mistake, size: 98929
2010-06-03
12:09
Remove global variables when compiled with SQLITE_OMIT_WSD file: [4e96a516] check-in: [dd10a547] user: drh branch: trunk, size: 98921
09:17
If an error (OOM or SQLITE_FULL error) occurs while executing an SQL statement and a statement-transaction is automatically rolled back as a result, if a second error occurs during the statement rollback do a full transaction rollback instead. Otherwise the client can be left with an inconsistent cache. This can affect both WAL and rollback modes. file: [834a5519] check-in: [eb80ddc6] user: dan branch: trunk, size: 98732
2010-05-06
21:37
The PRAGMA journal_mode=WAL; command now makes WAL the default journal mode for new databases added with ATTACH, so the behavior is consistent with the other journal modes. file: [69f58879] check-in: [c3520460] user: drh branch: trunk, size: 98511
2010-04-30
05:57
Zero the "immediate FK constraint counter" associated with a statement object when sqlite3_reset() is called. Fix for [c39ff61c43]. file: [395d21a1] check-in: [f660be61] user: dan branch: trunk, size: 98240
2010-04-19
18:03
Add the sqlite3_log_hook() interface for scheduling checkpoints. file: [be6ca4bb] check-in: [9bda6014] user: dan branch: wal, size: 98215
2010-04-02
12:55
Take care to avoid a buffer over-read when adding a KEYINFO structure to the P4 parameter of an opcode. file: [3028b2d5] check-in: [937b931a] user: drh branch: trunk, size: 98216
2010-03-24
11:55
Attempt to suppress a warning from Borland Code Guard. file: [863cd854] check-in: [be278979] user: drh branch: trunk, size: 98207
2010-03-08
21:40
Add NEVER and assert macros and explanatory comments for unreachable conditions. file: [0f352f63] check-in: [ffb6596e] user: drh branch: trunk, size: 98200
2010-02-25
14:56
Expire pragma statements when reset, even if they were not run to completion. file: [7379f5bd] check-in: [b8fbf427] user: drh branch: branch-3.6.22, size: 97915
14:47
Expire pragma statements when reset, even if they were not run to completion. file: [9089e0cd] check-in: [78351d28] user: drh branch: trunk, size: 97933
02:32
Merge in all of the logging enhancements. This is a cherrypick merge of the following check-ins: [103321e37a], [a8076aede3], [6d910245ad], [7c4cca6d1a], [edea3bb740], [1a6d4bb130], [a8c984c1d6], [69a493182f], and [1168763d2c]. file: [ef5b1822] check-in: [46f406b2] user: drh branch: branch-3.6.22, size: 97750
2010-02-23
17:36
Remove the obsolete sqlite3SafetyOn() mechanism. Add additional logging output for CORRUPT, and CANTOPEN errors. file: [417ee0c5] check-in: [7c4cca6d] user: drh branch: trunk, size: 97768
2010-01-20
01:20
Manually copy over the rebustness fixes from the apple-osx branch. file: [8f30e619] check-in: [095c74ea] user: drh branch: trunk, size: 97996
2010-01-19
23:50
robustness fixes for preventing a finalized statement from being reused file: [251147ba] check-in: [a7a0c8d6] user: adam branch: apple-osx, size: 98001
2009-12-31
20:35
Add comments and an assert() to help clarify the operation of the sqlite3VdbeList() routine used to implement EXPLAIN. file: [2e4a421b] check-in: [e1ccdb93] user: drh branch: trunk, size: 97978
2009-12-08
19:58
Add comments to better explain the two-pass memory allocation approach for prepared statements. file: [42ed644f] check-in: [0e5e18ea] user: drh branch: trunk, size: 96388
15:35
Avoid pointer aliasing in the allocSpace() routine in vdbeaux.c. file: [86d43cdf] check-in: [d6ae2751] user: drh branch: trunk, size: 95578
13:36
Avoid dereferencing a null pointer when doing a multi-database comment where one or more of the databases is an ATTACH-ed TEMP database. Ticket [abe728bbc311d]. file: [6b9da05a] check-in: [f43e37e0] user: drh branch: trunk, size: 95410
2009-11-16
21:28
Back out part of the change in [23ea2b700fd6d28d] since TH3 reveals some problems in OOM situations. file: [0981dcb5] check-in: [15d215d6] user: drh branch: trunk, size: 95428
03:13
Additional optimizations in sqlite3VdbeRecordCompare(). file: [52ea13c9] check-in: [23ea2b70] user: drh branch: trunk, size: 95417
02:14
Optimizations to the sqlite3VdbeRecordCompare() routine help it to run 12.5% faster for some traces. file: [d86062c2] check-in: [74c76f0b] user: drh branch: trunk, size: 95370
2009-11-14
23:22
Optimizations to the main loop inside sqlite3VdbeExec() to help VDBE byte code run a few percent faster. file: [45d1e150] check-in: [d622ac6a] user: drh branch: trunk, size: 94603
2009-11-12
19:59
Enhance the OP_Found and OP_NotFound opcodes so that they can accept an array of registers as an unpacked record in addition to a record built using OP_MakeRecord. Use this to avoid OP_MakeRecord calls during IN expression processing. file: [ee52010d] check-in: [b9eab885] user: drh branch: trunk, size: 94562
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [e85c8c7d] check-in: [f6c045f6] user: drh branch: trunk, size: 94051
2009-11-04
13:17
Create a new datatype "ynVar" to hold "nVar" (number of variable) values. This is normally 16-bits can can be 32-bits if SQLITE_MAX_VARIABLE_NUMBER is large enough. file: [0fac44db] check-in: [24a4d520] user: drh branch: trunk, size: 94110
2009-11-03
19:42
Fix compiler warnings on MSVC build. file: [7cb0daeb] check-in: [01c4b5b8] user: shane branch: trunk, size: 94108
01:22
All SQLITE_MAX_VARIABLE_NUMBER to exceed 32767. The sizes of some structures increase when the compile-time parameter is configured this way. file: [a829741c] check-in: [16a24b44] user: drh branch: trunk, size: 94099
2009-10-26
22:32
Remove additional obsolete code from the sqlite3_release_memory() logic. file: [55f467c7] check-in: [2eeb6ed8] user: drh branch: trunk, size: 94104
2009-10-19
18:11
Remove the sqlite3_reoptimize() API. The same functionality is now provided automatically to queries prepared using prepare_v2(). file: [fc032b05] check-in: [2c50b3d5] user: dan branch: trunk, size: 94602
2009-10-15
23:03
When a forced rollback occurs, cause all active statements on the same database connection to halt immediately with an SQLITE_ABORT error code. This is a partial fix to ticket [f777251dc7]. file: [04e91acf] check-in: [f256bc07] user: drh branch: trunk, size: 93455
18:35
Add the experimental sqlite3_reoptimize() API. file: [bd26b3c7] check-in: [9bd6f3d8] user: dan branch: experimental, size: 94622
2009-09-25
17:03
Avoid checking if an insert or delete has "fixed" an outstanding FK constraint violation if the constraint counter indicates that the database contains no such violations. file: [6834737c] check-in: [519144ac] user: dan branch: trunk, size: 93418
2009-09-24
00:09
Make sure a transaction is available for rollback whenever a REDUCE conflict resolution occurs and there is the possibility to ABORT. Ticket [4a03edc4c8c] file: [c36bb667] check-in: [f0c56fa9] user: drh branch: trunk, size: 93418
2009-09-23
17:30
Do not check immediate foreign key constraints until the end of the statement. This matches the postgres behaviour. file: [32d77382] check-in: [1a32149c] user: dan branch: trunk, size: 93317
2009-09-19
17:00
Check in implementation of foreign key constraints. file: [2dc9af9b] check-in: [d5d39981] user: dan branch: trunk, size: 92941
2009-09-10
19:09
Cleanup of warnings on MSVC build. file: [99399b7f] check-in: [5588cc96] user: shane branch: trunk, size: 91651
16:14
Fix a problem with the sqlite3VdbeMayAbort() assert failing following an OOM. file: [c167e902] check-in: [b3027863] user: dan branch: trunk, size: 91648
2009-09-09
11:37
Add a complicated assert() to check that statement transactions are opened when required. file: [257f9ab8] check-in: [28aa1f4e] user: dan branch: trunk, size: 91019
2009-09-08
19:15
Combine the OP_Statement and OP_Transaction opcodes. file: [75dff914] check-in: [aec9dbd8] user: dan branch: trunk, size: 88200
01:14
Code simplifications, especially to the pseudo-table logic, and comment improvements. file: [ec1545ec] check-in: [52449a95] user: drh branch: trunk, size: 89516
2009-09-07
17:41
Merge 1958db4493 and 26cd015c0e. file: [ea6d2f21] check-in: [ecbe0832] user: dan branch: trunk, size: 89590
17:32
Fix a bug where a condition was incorrectly being compiled out when SQLITE_OMIT_VIRTUALTABLE was defined. file: [d1d3fde6] check-in: [1958db44] user: dan branch: trunk, size: 89565
04:38
Warning cleanup from the MSVC compile. file: [f13f4bc6] check-in: [26cd015c] user: shane branch: trunk, size: 89590
2009-09-01
12:16
More fixes and comment updates. file: [a88ef864] check-in: [38a9327b] user: dan branch: trunk, size: 89565
2009-08-31
05:39
Merge with main branch. file: [1cc9dd48] check-in: [6e09e287] user: dan branch: trunk, size: 87860
05:23
Fix another test problem and some instances where an OOM may cause a segfault. file: [d8ca6816] check-in: [31199db0] user: dan branch: trunk, size: 87815
2009-08-30
11:42
Fixes for new triggers scheme. file: [ea92afd3] check-in: [9eb91efd] user: dan branch: trunk, size: 87688
2009-08-28
18:53
Changes to support recursive triggers. file: [cf440244] check-in: [9b9c1921] user: dan branch: trunk, size: 87740
2009-08-25
14:24
Make sure that the output of EXPLAIN is right when the P4 argument of an opcode is of type P4_MEM with the MEM having type MEM_Blob. file: [014a6043] check-in: [6a623e6c] user: drh branch: trunk, size: 84705
13:10
Fix an uninitialized variable in sqlite3VdbeIdxRowid(). file: [46c85b2c] check-in: [6e787e18] user: drh branch: trunk, size: 84626
12:11
Merge together the os_unix.c fix of [aa6acfa8ca] and the trigger fix of [dee1b8eb40]. file: [974a02fb] check-in: [1e2c6e13] user: drh branch: trunk, size: 84643
2009-08-08
18:01
Suppress various compiler warnings. (CVS 6963) file: [4956536a] check-in: [257e9b57] user: drh branch: trunk, size: 84659
2009-07-25
17:42
Adjust memory size computations to avoid a conditional that is always false on 64-bit systems. (CVS 6942) file: [e57911d2] check-in: [04211e6a] user: drh branch: trunk, size: 84649
2009-07-24
17:58
Allow virtual tables to be used in shared-cache mode. (CVS 6928) file: [e3943dae] check-in: [5d9e767a] user: danielk1977 branch: trunk, size: 84689
2009-07-22
00:35
Further simplifications to btree.c, especially the sqlite3BtreeKey() and sqlite3BtreeData() functions. New assert() statements added to verify that these routines are called correctly. (CVS 6917) file: [a1ed07f9] check-in: [96cfd079] user: drh branch: trunk, size: 84414
2009-07-17
17:25
Fix a subtle problem that can occur when a transaction is automatically rolled back, and afterwards a VM that had opened a statement transaction within the abandoned transaction is finalized. Fixes an assert() that was failing in rtree3.test. (CVS 6903) file: [017bd277] check-in: [910df46e] user: danielk1977 branch: trunk, size: 84332
2009-07-15
16:30
Remove an assert() from vdbeaux.c that might not be true if the database file is corrupt. (CVS 6895) file: [5c2ad567] check-in: [a42dc51e] user: drh branch: trunk, size: 84017
2009-07-14
18:35
Add comments and assert() statements to show that the return value from sqlite3BtreeKeySize() and sqlite3BtreeData() usually do not matter. Ticket #3968. Also remove a NEVER() macro that can sometimes be true - discovered while testing the previous change. (CVS 6893) file: [1c3b0698] check-in: [0c710c1b] user: drh branch: trunk, size: 84069
14:15
Simplifications and tweaks to vdbeaux.c resulting from structural testing. (CVS 6891) file: [5b3cacb6] check-in: [fa49666f] user: drh branch: trunk, size: 83902
02:33
Make sure the IN operator works with zeroblobs. Ticket #3965. Other simplifications associated with structural testing. (CVS 6890) file: [17b354bc] check-in: [25dd3422] user: drh branch: trunk, size: 83689
2009-07-13
15:52
Remove the SQLITE_CommitBusy flag. This was an attempt to block recursion on the sqlite3_commit_hook() interface. But such recursion is explicitly disallowed, so the flag is pointless. (CVS 6889) file: [a032d0ec] check-in: [1c2bfc43] user: drh branch: trunk, size: 83752
2009-07-08
08:05
Remove an ALWAYS clause that could be false if an IO error within a statement executed by a virtual table caused an emergency rollback. (CVS 6859) file: [e70a9851] check-in: [0cc705c2] user: danielk1977 branch: trunk, size: 83925
2009-07-07
02:44
Simplifications to btree.c and vdbeaux.c in support of structural coverage testing. (CVS 6853) file: [67fb11db] check-in: [fc2a40a9] user: drh branch: trunk, size: 83636
2009-07-06
00:44
Simplifications and comment cleanup in vdbeaux.c. (CVS 6849) file: [f62c8c83] check-in: [1636e783] user: drh branch: trunk, size: 83776
2009-06-26
16:32
Removed a few compiler warnings under MSVC. (CVS 6825) file: [3773217a] check-in: [f01a9fc3] user: shane branch: trunk, size: 84041
14:04
When sqlite3VdbeAddOp() fails due to an OOM fault, return an address of 1 rather than zero so that there appears to always be a prior instruction. This prevents a negative jump-to address computation in where.c following an OOM fault. (CVS 6822) file: [338d4b43] check-in: [fe02339c] user: drh branch: trunk, size: 83856
12:15
Fix the new pager.c changes so that they compile with IOTRACE defined. Fix an out-of-order variable definition in vdbeaux.c. (CVS 6820) file: [569653e1] check-in: [ac145028] user: drh branch: trunk, size: 83856
2009-06-23
14:15
Simplifications to vdbe.c to promote better test coverage. (CVS 6802) file: [2801d018] check-in: [3ffc93d7] user: drh branch: trunk, size: 83917
2009-06-22
19:05
Simplifications to vdbe.c and it service routines in support of coverage testing. (CVS 6799) file: [6f0e3680] check-in: [308f2e61] user: drh branch: trunk, size: 83903
00:55
Simplifications to vdbe.c in support of coverage testing. (CVS 6794) file: [516b7e12] check-in: [16680f05] user: drh branch: trunk, size: 83493
2009-06-19
00:33
Make sure the sqlite3VdbeGetOp() subroutine works even when SQLite is compiled with SQLITE_OMIT_TRACE. (CVS 6784) file: [77b67343] check-in: [1c8ec2a6] user: drh branch: trunk, size: 83503
2009-06-09
18:58
Fix compiler warnings with MSVC build. (CVS 6741) file: [14e1c606] check-in: [0bd84e73] user: shane branch: trunk, size: 82918
2009-06-05
14:17
Take care that a corrupt variable-length integer does not cause 32-bit integer overflow when parsing a record format, nor cause excessively large memory allocations. (CVS 6719) file: [78ff6c35] check-in: [38b20327] user: drh branch: trunk, size: 82906
2009-05-29
19:00
Enhance the sqlite3VdbeGetOp() routine so that it always returns a pointer to VdbeOp, even following an OOM fault. This simplifies error handling in callers. Cleanup to the column cache logic and the expr.c source module. (CVS 6691) file: [37730f22] check-in: [ede06dac] user: drh branch: trunk, size: 82869
2009-05-06
18:57
Changes to silence compiler warnings under MSVC. (CVS 6613) file: [1a07329b] check-in: [df599237] user: shane branch: trunk, size: 82328
2009-05-05
15:46
Make sure the left-shift operator never overflows. (CVS 6605) file: [7ac5c358] check-in: [300da301] user: drh branch: trunk, size: 82258
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: [02cefacf] check-in: [cac4f3d8] user: danielk1977 branch: trunk, size: 82233
2009-04-22
15:32
Change the OP_Rowid opcode so that a deferred OP_Seek is pending, it simply pulls the rowid from the deferred seek target and does not actually move the cursor or do a seek. Other where.c cleanups. (CVS 6536) file: [34524d49] check-in: [1c508a99] user: drh branch: trunk, size: 81737
02:15
Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535) file: [fdad66c7] check-in: [e963bed0] user: drh branch: trunk, size: 81722
2009-04-21
09:02
Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527) file: [8b2ecd0e] check-in: [f61e4cd9] user: danielk1977 branch: trunk, size: 81820
2009-04-10
15:42
Fix MSVC compiler warning in vdbeaux.c. (CVS 6485) file: [5ecb4c7a] check-in: [d619465e] user: shane branch: trunk, size: 81724
12:55
Changes to ensure that when running in shared-cache mode with a non-threadsafe build, the correct busy-handler callback is always invoked. (CVS 6481) file: [b48b0af5] check-in: [683e4bd7] user: danielk1977 branch: trunk, size: 81491
00:56
Force 8-byte alignment of sqlite3_value objects in the sqlite3VdbeUnpackRecord() primitive. Ticket #3777. (CVS 6479) file: [e1aa4cd6] check-in: [2cc68272] user: drh branch: trunk, size: 80409
2009-04-06
11:11
Check-in (6450) introduced the possibility of calling memset() with a negative 3rd argument. This fixes that bug. Ticket #3777. (CVS 6452) file: [570aaa5e] check-in: [8ca612c4] user: drh branch: trunk, size: 80053
2009-04-05
12:22
Additional code to make sure and to assert that memory allocations have 8-byte alignment. Ticket #3777. (CVS 6450) file: [d335ae5d] check-in: [208382e0] user: drh branch: trunk, size: 80020
2009-03-25
15:43
Fix a problem preventing sqlite3_extended_errcode() from working correctly. (CVS 6385) file: [521187e1] check-in: [de469c46] user: danielk1977 branch: trunk, size: 79912
2009-03-23
04:33
Use the ROUND8() macro to round an integer up to the nearest multiple of 8 and ROUNDDOWN8() macro to round down to the nearest multiple of 8. This is a cosmetic change. (CVS 6372) file: [be958dfe] check-in: [db1d4d2f] user: danielk1977 branch: trunk, size: 79900
2009-03-20
14:42
Fix an assert failure introduced by (6355). (CVS 6365) file: [8b3ce012] check-in: [a08324d1] user: danielk1977 branch: trunk, size: 79899
2009-03-18
10:33
Fix some cases where executing SQL from within a user-function callback could cause problems related to statement-transactions. (CVS 6355) file: [e9b76cf2] check-in: [a60f4191] user: danielk1977 branch: trunk, size: 79883
2009-03-16
13:19
Add the sqlite3_unlock_notify() API. (CVS 6348) file: [feeafee5] check-in: [b649a6cc] user: danielk1977 branch: trunk, size: 78622
2009-03-05
04:20
Corrected typos and misspellings. Ticket #3702. (CVS 6336) file: [cf849551] check-in: [6404afa0] user: shane branch: trunk, size: 78339
03:48
Removed compiler warnings from MSVC builds. Ticket #3701. (CVS 6335) file: [5b7be22d] check-in: [5477833e] user: shane branch: trunk, size: 78338
2009-03-01
19:42
Fix a critical bug in the VDBE opcode array resizer introduced by check-in (6307). Bug detected by regression testing. (CVS 6330) file: [f6a312a2] check-in: [ec3b18ac] user: drh branch: trunk, size: 78328
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: [88160f4e] check-in: [e43ed649] user: danielk1977 branch: trunk, size: 78327
01:28
Reuse space left-over opcode space at the end of the VDBE opcode array to store memory cells, VDBE cursors, and other content needed by the VDBE. This reduces the memory required by a prepared statement. (CVS 6307) file: [dd5fc23b] check-in: [58a18092] user: drh branch: trunk, size: 78316
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: [f636fd01] check-in: [d9f6ffbc] user: danielk1977 branch: trunk, size: 76822
2009-02-03
16:51
Commit first version of the 'backup' feature. (CVS 6241) file: [75c3ac2a] check-in: [663479b4] user: danielk1977 branch: trunk, size: 75934
2009-01-20
17:06
Big change to make pager.c easier to follow. Unused variables removed, comments improved, etc. (CVS 6197) file: [30c1bbc1] check-in: [12f7346c] user: danielk1977 branch: trunk, size: 75935
16:53
When not compiling for an EBCDIC system, use built-in alternatives to the tolowe r(), toupper() and other ctype.h library functions. Ticket #3597. (CVS 6196) file: [a5db2fe6] check-in: [1041abd6] user: danielk1977 branch: trunk, size: 75989
2009-01-16
16:23
Revert (6187). (CVS 6188) file: [a593c4ce] check-in: [a353c1ab] user: danielk1977 branch: trunk, size: 76022
15:21
This commit is an error. Reverted by (6188). (CVS 6187) file: [2f6c3fce] check-in: [aa67fd0c] user: danielk1977 branch: trunk, size: 75968
2009-01-07
08:12
Fix savepoint related bugs. A rollback caused by an IO error or "OR ROLLBACK" clause while one or more savepoints were open was leaving the sqlite3 structure in an invalid state. (CVS 6128) file: [7f3e9297] check-in: [e5d42c69] user: danielk1977 branch: trunk, size: 76022
2009-01-03
14:04
When the commit_hook calls a query recursively, make sure the commit_hook is not invoked recursively. Ticket #3564. (CVS 6107) file: [f8bf57ba] check-in: [27ae4065] user: drh branch: trunk, size: 75940
2008-12-16
17:20
Fix a compile error in an assert() and a warning with MSVC builds. (CVS 6032) file: [6f9b4387] check-in: [8b8f6a6a] user: shane branch: trunk, size: 75776
2008-12-11
16:17
Guard against attacks from deliberately corrupted database files. (CVS 6021) file: [d3a78573] check-in: [da2ec964] user: drh branch: trunk, size: 75769
2008-12-10
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) file: [5356c9bb] check-in: [c872d554] user: drh branch: trunk, size: 74372
17:20
Remove or rename local variables that shadow other variables or parameters. (CVS 6005) file: [2b7bfb73] check-in: [e7e9fa4f] user: drh branch: trunk, size: 74321
2008-12-09
02:51
Suppress more silly compiler warnings. (CVS 5995) file: [bdf1b3cd] check-in: [1522c2c6] user: drh branch: trunk, size: 74317
2008-12-05
15:24
Make use of sqlite3DbMallocSize to maximize the size of growable buffers after each reallocation. Added new comments and testcase() macros to where.c. (CVS 5981) file: [9db6b1eb] check-in: [46f2d089] user: drh branch: trunk, size: 74148
2008-12-04
20:40
Replace the VDBE Fifo object with the new RowSet object. (CVS 5977) file: [33ba6b66] check-in: [39a0750b] user: drh branch: trunk, size: 74087
2008-11-21
16:58
Fix the OOM handling for explain statements so that it is the same as for regular statements if the OOM error occurs from within a call to sqlite3_column_text() or text16(). (CVS 5941) file: [250296ad] check-in: [891b14e1] user: danielk1977 branch: trunk, size: 74030
2008-11-17
19:18
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) file: [18dea7bb] check-in: [8009220c] user: danielk1977 branch: trunk, size: 73803
2008-11-13
18:00
Avoid committing a transaction from within the xSync() method of a virtual table. Fix for #3497. (CVS 5902) file: [8915d236] check-in: [eabb8b75] user: danielk1977 branch: trunk, size: 74050
2008-11-05
17:41
Fix memory allocation problems when string length exceeds limits. (CVS 5865) file: [75258853] check-in: [b568e325] user: drh branch: trunk, size: 73999
16:37
The COMMIT command now works even if there are pending queries, as long as the pending queries are reading and not writing the database. (CVS 5864) file: [ec1ee5ac] check-in: [51f04aaf] user: drh branch: trunk, size: 74008
2008-11-04
14:25
Avoid a segfault when OOM on a simple EXPLAIN query. Ticket #3478. (CVS 5860) file: [3c6ebfba] check-in: [acf26cc0] user: drh branch: trunk, size: 74537
2008-11-03
20:55
Change the name of the Cursor object to VdbeCursor. (CVS 5857) file: [68ec5b5d] check-in: [fdb98fd8] user: drh branch: trunk, size: 74547
09:39
Modify an assert() statement to fix #3473. No other code changes. (CVS 5856) file: [eb951369] check-in: [aca6b260] user: danielk1977 branch: trunk, size: 74535
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: [16498c4d] check-in: [bfce9142] user: danielk1977 branch: trunk, size: 74509
2008-10-11
17:51
When transfering an error message from a statement handle to the database handle so that it can be accessed by sqlite3_errmsg(), a malloc may fail. If this malloc fails, it is considered benign. (CVS 5806) file: [e007aa72] check-in: [311003af] user: danielk1977 branch: trunk, size: 74382
2008-09-19
18:32
Speed up releaseMemArray() a bit by handling the most common types of memory cells inline. (CVS 5726) file: [20a7d109] check-in: [ce075085] user: danielk1977 branch: trunk, size: 74316
2008-09-16
09:09
Set the type of the "comment" field to SQLITE_TEXT when outputing the results of an EXPLAIN query. (CVS 5704) file: [e1198d1e] check-in: [5dff20f4] user: danielk1977 branch: trunk, size: 73415
2008-08-20
22:06
Modify the sqlite3VdbeUnpackRecord() interface to force the temporary space to be 8-byte aligned. This might be important for Sparc. Ticket #3318. (CVS 5573) file: [45a53a44] check-in: [00b17798] user: drh branch: trunk, size: 73373
16:35
Refactor the name resolution procedures in the code generator. (CVS 5569) file: [ba13cc1e] check-in: [daf730d1] user: drh branch: trunk, size: 73373
2008-08-13
19:11
Additional changes toward fixing ticket #3292. (CVS 5562) file: [3e2e1f36] check-in: [0b92cbf5] user: drh branch: trunk, size: 73336
14:07
A partial fix for ticket #3292. This fixes the original problem but there are other similar problems lurking in the code still. (CVS 5561) file: [7b25fbbb] check-in: [055f173a] user: drh branch: trunk, size: 74574
2008-08-02
03:50
Additional coverage testing. Fix a segfault following OOM in sqltie3_load_extension(). (CVS 5523) file: [21126e0d] check-in: [f1e44eb3] user: drh branch: trunk, size: 73178
2008-08-01
20:10
Bring test coverage up to 99%. (CVS 5522) file: [81a433ce] check-in: [2cd6bae8] user: drh branch: trunk, size: 73196
17:37
Test that virtual table methods xBestIndex, xOpen, xFilter, xNext, xColumn, xRowid, xUpdate, xSync and xBegin can all return error messages using the sqlite3_vtab.zErrMsg variable. (CVS 5519) file: [78c9d641] check-in: [007359b7] user: danielk1977 branch: trunk, size: 73436
2008-07-31
01:43
Fixed comment to use right function names for sqlite3VdbeSerialPut() and sqlite3VdbeSerialGet(). (CVS 5507) file: [dbd2756c] check-in: [820c37ec] user: shane branch: trunk, size: 73409
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: [706d7220] check-in: [e48f9697] user: drh branch: trunk, size: 73410
2008-07-26
18:26
Fix a case where database corruption was causing an invalid reference. (CVS 5484) file: [0d221c85] check-in: [7aecabac] user: danielk1977 branch: trunk, size: 73127
2008-07-22
05:18
Changed a few loop counters to unsigned ints to remove compiler warnings. (CVS 5449) file: [05330c21] check-in: [16f51f9b] user: shane branch: trunk, size: 73000
2008-07-18
08:10
Speed up sqlite3_finalize() by removing redundant code. (CVS 5436) file: [2ef92c02] check-in: [c94318b9] user: danielk1977 branch: trunk, size: 72956
2008-07-11
21:02
Detect and handles the case where a row is modified or deleted while it is being read during SELECT processing. (CVS 5399) file: [25d562cd] check-in: [c80a5d09] user: drh branch: trunk, size: 72936
16:15
Additional test coverage for the btree module. Remove the failsafe() macro and replace it with ALWAYS() and NEVER(). (CVS 5395) file: [24ecae4e] check-in: [d7e2f0d2] user: drh branch: trunk, size: 72720
2008-07-08
22:28
Added macros to convert between 32-bit ints and 64-bit ptrs to avoid compiler warnings. (CVS 5378) file: [734d27d1] check-in: [6cdb6841] user: shane branch: trunk, size: 72624
19:34
Completely rework the sqlite3SetString() primitive so that it honors the SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374) file: [c037e327] check-in: [8ed04b1e] user: drh branch: trunk, size: 72608
2008-06-25
00:12
The compound-select merge optimization passes quick.test with no errors. (CVS 5299) file: [3f41742b] check-in: [8bbfa978] user: drh branch: trunk, size: 72590
2008-06-23
13:57
Fix a compilation problem with SQLITE_OMIT_VIRTUAL_TABLE is defined. (CVS 5277) file: [3db1f037] check-in: [0421c099] user: danielk1977 branch: trunk, size: 72481
2008-06-22
12:37
Fix a bug in the KEYINFO handling within select.c. Change the OP_Move opcode to take a count and to move multiple registers. Initial code for the compound-select merge optimization is added but is incomplete and is commented out. (CVS 5272) file: [eff4eed7] check-in: [663a590e] user: drh branch: trunk, size: 72473
2008-06-20
18:13
Add new Compare and Jump codes to the virtual machine. Use them in the implementation of aggregate queries. (CVS 5257) file: [5645351a] check-in: [08311365] user: drh branch: trunk, size: 72783
14:59
Add a mode to the sqlite3_test_control() interface to register hooks called at the beginning and end of "benign malloc failure" blocks. This allows malloc() failure testing to be done using public APIs only. (CVS 5254) file: [c61240e6] check-in: [56c8af14] user: danielk1977 branch: trunk, size: 72174
2008-06-18
15:34
Make sure aggregate functions can take any number of arguments up to the limit imposed by SQLITE_LIMIT_FUNCTION_ARGS. Ticket #3179. Modify the group_concat() function to take an unlimited number of arguments in order to facilitate testing this behavior. (CVS 5233) file: [09d7a692] check-in: [70c6739f] user: drh branch: trunk, size: 72218
2008-06-15
02:51
Continuing work on the new memory allocation subsystem. Added routines for temporary memory allocation. Right the btree balance mechanism to only do one temporary allocation at a time. (CVS 5220) file: [34b9478e] check-in: [65fe7b62] user: drh branch: trunk, size: 72231
2008-06-06
15:04
Remove the subroutine return stack from the VDBE. Return addresses for subroutines are now stored in registers. (CVS 5191) file: [08ec9a7d] check-in: [ef1956ee] user: drh branch: trunk, size: 72232
11:11
Remove the xGetTempname() method from the vfs structure. Temp files are now opened by passing a NULL pointer as the filename to xOpen(). (CVS 5190) file: [433be5e2] check-in: [5173b3e8] user: danielk1977 branch: trunk, size: 72262
2008-06-05
11:39
Modify the signatures of the sqlite3_vfs.xAccess and sqlite3_vfs.xCheckReservedLock functions. (CVS 5188) file: [8ca11894] check-in: [4226ac54] user: danielk1977 branch: trunk, size: 72245
2008-05-13
13:27
Make the benign-fault setting recursive. Make all malloc failures during a rollback benign since there is nothing we can do about them. (CVS 5128) file: [7823f1db] check-in: [a9d1d931] user: drh branch: trunk, size: 72237
2008-05-08
15:18
Use a 6-byte rather than an 8-byte encoding for integers between 17592186044416 and 140737488355327. Ticket #3100. (CVS 5105) file: [b98643ab] check-in: [0a4d26de] user: drh branch: trunk, size: 72235
2008-04-29
00:15
Always convert IEEE NaN into NULL. Ticket #3060. Add test cases to verify that this is happening. (CVS 5066) file: [aae523de] check-in: [9b07e59e] user: drh branch: trunk, size: 72235
2008-04-27
18:40
Remove all references to sqlite3_intptr_t. (CVS 5051) file: [7a0d0f02] check-in: [6a94d197] user: drh branch: trunk, size: 72200
2008-04-24
19:15
Consolidated varint macro usage from btreeInt.h, vdbe.c, and vdbeaux.c into sqliteInt.h and made their use consistent. Slight improvements to varint32 macros. (CVS 5045) file: [e742b654] check-in: [0d04ccd9] user: shane branch: trunk, size: 72220
08:36
Remove redundant assert() statement from vdbeaux.c. Ticket #3065. (CVS 5039) file: [f18c0d2c] check-in: [3cba1166] user: danielk1977 branch: trunk, size: 72863
08:31
Add version comment to vdbeaux.c. No code changes. Ticket #3066. (CVS 5038) file: [0aa45610] check-in: [d667add4] user: danielk1977 branch: trunk, size: 72889
2008-04-18
09:01
Allow OP_MoveGt and similar to use an array of registers instead of a serialized record. Modify one type of index range scan to use this. (CVS 5028) file: [ca70c67f] check-in: [c448f15a] user: danielk1977 branch: trunk, size: 72822
2008-04-17
14:16
In exclusive locking mode, commit by zeroing the first 28 bytes of the journal file, not by truncating the journal. Overwriting is much faster than truncating. (CVS 5023) file: [54fc53ee] check-in: [8efb7f4f] user: drh branch: trunk, size: 72710
2008-04-11
17:15
Remove a recently added assert() that is failing with certain compilers on 32-bit platforms. Ticket #3043. (CVS 4990) file: [f7460fac] check-in: [03c0279d] user: danielk1977 branch: trunk, size: 72598
15:36
Additional reductions in the use of memset(). (CVS 4988) file: [c44aeac1] check-in: [38746c54] user: drh branch: trunk, size: 72709
14:56
Speed improvements by removing unnecessary memset() operations. Also: do not resize the opcode array of a virtual machine to its minimum size after code generation completes. The extra resize merely uses time. (CVS 4987) file: [2d17d5bf] check-in: [25899555] user: drh branch: trunk, size: 72732
2008-04-10
14:57
Make sure all memory allocations are 8-byte aligned. Ticket #3040. Note that the mem3.c memory allocator returns 4-byte aligned memory allocations. But as mem3.c is intended for use in 32-bit embedded systems, we are not going to change that. (CVS 4978) file: [0aa2d8ed] check-in: [d11e8e30] user: drh branch: trunk, size: 72690
2008-03-28
15:44
Changes to the Mem structure to reduce the frequency of freeing and reallocating the dynamic buffer. (CVS 4928) file: [519ec819] check-in: [d0bf73d8] user: danielk1977 branch: trunk, size: 72554
2008-03-27
22:42
Allow the xAccess method in the VFS to return -1 to signal an I/O error, and in particular an SQLITE_IOERR_NOMEM. (CVS 4925) file: [bb810c1c] check-in: [3cb704c4] user: drh branch: trunk, size: 72507
17:59
Allow creation of ephemeral pseudo-tables - pseudo-tables that copy a pointer to a row when inserted instead of copying the row data. (CVS 4924) file: [0bdcfad8] check-in: [1a58a870] user: danielk1977 branch: trunk, size: 72415
2008-03-26
18:34
Changes to delay freeing buffers associated with vdbe memory cells until either sqlite3_finalize() or sqlite3_release_memory() is called. (CVS 4922) file: [c77a88c9] check-in: [8c2f6952] user: danielk1977 branch: trunk, size: 72377
2008-03-25
17:23
Modify the {quote: IdxDelete} opcode so that it takes an array of registers rather than a record formed using {quote: MakeRecord.} This avoids a needless packing and unpacking of the record to be deleted. (CVS 4916) file: [e45929a3] check-in: [ee381b43] user: drh branch: trunk, size: 71781
09:47
Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912) file: [c071014d] check-in: [04715364] user: danielk1977 branch: trunk, size: 75433
00:22
Removed the direct btree tests - part of the ongoing effort to test by calling only public interfaces. Modify the sqlite3VdbeRecordCompare interface to used a pre-parsed second key - resulting in a 13% performance improvement on speed1p.test. (CVS 4911) file: [f3ee532b] check-in: [0e1d84f2] user: drh branch: trunk, size: 74923
2008-03-19
14:15
Add a new api sqlite3_randomness() for providing access to SQLite's internal PRNG. Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882) file: [82f3c891] check-in: [15110ea0] user: drh branch: trunk, size: 68956
2008-03-06
09:58
Handle non-autoconf build correctly with new changes (CVS 4832) file: [83e34e38] check-in: [e2a9f5f1] user: mlcreech branch: trunk, size: 68955
07:35
Use intptr_t definition to silence warnings about ptr-int casts (CVS 4824) file: [e88a296b] check-in: [54839a84] user: mlcreech branch: trunk, size: 68947
2008-03-04
17:45
Various renames & cleanups to limit exported symbols on amalgamation build (CVS 4819) file: [376b9926] check-in: [9c6694bb] user: mlcreech branch: trunk, size: 68819
2008-02-19
18:28
Remove an instance of sprintf() from the VM implementation. SQLite should not use sprintf() from the C library - it has its own implementation. (CVS 4800) file: [bf20bbb4] check-in: [68f5dddd] user: drh branch: trunk, size: 68835
2008-02-18
22:24
Add the memory fault simulator to mem5.c. Enable soft heap limit on mem5.c. Limit the size of hash tables and the vdbefifo when using mem5.c. (CVS 4795) file: [628751c5] check-in: [63da5d97] user: drh branch: trunk, size: 68815
2008-02-14
23:44
Fix a bug in EXPLAIN growing out of the new Mem implementation. (CVS 4790) file: [758e5f4e] check-in: [4df62a55] user: drh branch: trunk, size: 68696
2008-02-13
18:25
Where possible, avoid freeing buffers allocated for vdbe memory cells in case they can be reused. (CVS 4783) file: [36d4db24] check-in: [990237e2] user: danielk1977 branch: trunk, size: 68640
2008-01-23
03:03
Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when compiling without -DSQLITE_DEBUG=1. (CVS 4744) file: [771b9ffd] check-in: [5375ad6b] user: drh branch: trunk, size: 68065
2008-01-22
01:48
Changes to lemon to generate additional comments in the output file and to remove unreachable code. Additional test cases for improved test coverage. (CVS 4736) file: [4a0c75af] check-in: [2a0bc1e1] user: drh branch: trunk, size: 68029
2008-01-19
20:11
Miscellaneous code simplifications and cleanup and test coverage enhancements. (CVS 4730) file: [e73c4ca5] check-in: [af129b6d] user: drh branch: trunk, size: 67891
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: [0d2a9730] check-in: [706b41b7] user: drh branch: trunk, size: 67581
02:36
Registerification of the WHERE clause logic. (CVS 4716) file: [e5b40125] check-in: [b3a141b2] user: drh branch: trunk, size: 68352
2008-01-15
02:22
Fix for a couple of minor memory leaks. (CVS 4712) file: [1bf7dbab] check-in: [a13d3e95] user: drh branch: trunk, size: 68262
2008-01-12
21:35
The sqlite3_trace() callback now prints a message as each trigger fires within a statement. (CVS 4709) file: [ac5d274b] check-in: [110c000d] user: drh branch: trunk, size: 68217
2008-01-10
23:50
More work toward converting the VM into a register-based machine. (CVS 4704) file: [db33a4c2] check-in: [8cbd4651] user: drh branch: trunk, size: 68247
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: [53cc9e2d] check-in: [e3cf1c1c] user: drh branch: trunk, size: 68267
2008-01-08
23:54
Registerify the comparison opcodes. (CVS 4697) file: [2f716ebd] check-in: [8862ce9c] user: drh branch: trunk, size: 68130
02:57
Progress toward registerification of the constraint checking logic for INSERT and UPDATE. (CVS 4693) file: [b6241be0] check-in: [b9bf509e] user: drh branch: trunk, size: 68124
2008-01-05
18:44
Fix a memory leak introduced with #4687. (CVS 4688) file: [75b7d3e4] check-in: [2b98b0fc] user: danielk1977 branch: trunk, size: 68097
05:20
Register-ify the OP_AddImm and all casting opcodes. Omit the OP_MemIncr opcode. (CVS 4683) file: [b5437d3a] check-in: [3e8a07dd] user: drh branch: trunk, size: 68071
2008-01-04
22:01
Implement the out2-prerelease opcode design pattern. (CVS 4681) file: [ae45ffee] check-in: [fe057a88] user: drh branch: trunk, size: 67961
19:33
Allow the P2 operand to be negative on opcodes that are not jumps. (CVS 4680) file: [83262e81] check-in: [717bcd11] user: drh branch: trunk, size: 67960
16:50
Replace the NOPUSH_MASKs with a bit-vector mechanism that can contain several different properties about each opcode. (CVS 4677) file: [02fef605] check-in: [042dcb96] user: drh branch: trunk, size: 67908
2008-01-03
18:56
Fix typo in comment. Ticket #2870. (CVS 4672) file: [eaf5bef9] check-in: [e97e4578] user: danielk1977 branch: trunk, size: 69473
18:39
Modify VFilter and VRename to use registers instead of the vdbe stack for inputs. (CVS 4670) file: [2b5aa582] check-in: [253ed40a] user: danielk1977 branch: trunk, size: 69473
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: [54b7ad5d] check-in: [0b849805] user: drh branch: trunk, size: 69474
11:50
Change the VdbeOp.p4 union to include specific pointer types for the various values of VdbeOp.p4type. (CVS 4667) file: [85e5dd39] check-in: [7e8330c8] user: danielk1977 branch: trunk, size: 69385
09:51
Change the OP_Insert opcode to read the key and data to insert from memory cells, not the stack. (CVS 4666) file: [077854f4] check-in: [46501f49] user: danielk1977 branch: trunk, size: 69432
08:18
Change the output of vdbe_trace etc. to include operands p3 and p5. (CVS 4665) file: [8c8901e4] check-in: [76f2040b] user: danielk1977 branch: trunk, size: 69237
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: [f31d1dbb] check-in: [35da261d] user: danielk1977 branch: trunk, size: 69207
07:09
Fix EXPLAIN and EXPLAIN query plan to work with new opcode format. (CVS 4662) file: [5d04881c] check-in: [b166c33a] user: danielk1977 branch: trunk, size: 68895
01:28
Revamp sqlite3VdbeAddOpList() so that the structure holds integer values for P1, P2, and P3. (CVS 4661) file: [cd0a3f70] check-in: [4dc507d8] user: drh branch: trunk, size: 68374
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: [5601e73e] check-in: [027875e4] user: drh branch: trunk, size: 68356
2008-01-02
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: [9c2ce05e] check-in: [f1966a8a] user: danielk1977 branch: trunk, size: 68441
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: [bca64691] check-in: [051ec01f] user: drh branch: trunk, size: 68414
2007-12-04
16:54
Make sure statement journals are initiated when doing DROP operations (since the DROP might fail after sqlite_master changes). Also make sure statement journals are initiated if there are pending SELECT statements. Ticket #2820. (CVS 4591) file: [5bc14ff3] check-in: [bf34284f] user: drh branch: trunk, size: 67064
2007-11-29
17:05
Optimisations for expressions of the form "<value> IN (SELECT <column> FROM )". (CVS 4579) file: [285f1133] check-in: [56d0e326] user: danielk1977 branch: trunk, size: 66899
2007-11-24
10:23
Declare the invalidateCursorsOnModifiedBtrees function to be static. Ticket #2792. (CVS 4559) file: [ecda6d92] check-in: [94f25fc1] user: drh branch: trunk, size: 66847
2007-11-14
06:48
Add an experimental API for retrieving the SQL source from a compiled statement: sqlite3_sql(). Ticket #2769. (CVS 4543) file: [ffc2610c] check-in: [d31f1e0d] user: danielk1977 branch: trunk, size: 66840
2007-11-13
10:30
Modify the Tcl interface to use sqlite3_prepare_v2(). (CVS 4542) file: [4b6fb200] check-in: [7bb00c7d] user: danielk1977 branch: trunk, size: 66820
2007-10-23
15:39
Floating point and 64-bit integer constants store in the virtual machine opcodes in binary, not as text. Performance improvement. Ticket #2733. (CVS 4507) file: [7bb91382] check-in: [7e30fd6a] user: drh branch: trunk, size: 66723
2007-10-20
15:41
Simplify the mem3.c memory allocator. Have it call sqlite3_release_memory() automatically, without having to specify the soft heap limit. (CVS 4496) file: [99534543] check-in: [ca51b2f5] user: drh branch: trunk, size: 66478
2007-10-03
18:45
Simplify the vdbeHalt logic slightly. (CVS 4459) file: [5f1e5e98] check-in: [b59f7bcb] user: drh branch: trunk, size: 66742
15:30
Rollback the transaction if an SQLITE_FULL error is encountered. This is a preliminary fix for ticket #2686. More testing and analysis is needed before we close the ticket. (CVS 4458) file: [9bb437cb] check-in: [0fb6d5a5] user: drh branch: trunk, size: 67363
2007-08-30
15:05
Fix the SQLITE_MIXED_ENDIAN_64BIT_FLOAT option so that it works on goofy linux kernels that employ CONFIG_FPE_FASTFPE. Patch from Frank van Vugt. (CVS 4339) file: [e35c851e] check-in: [71ab92e9] user: drh branch: trunk, size: 67982
01:19
Fix for the sqlite3AbortOtherActiveVdbes() problem. (CVS 4328) file: [0e92ed38] check-in: [e40d40a5] user: drh branch: trunk, size: 67272
2007-08-29
17:43
Improvements to mutex asserts. The quick test runs to completion without assertion faults. (CVS 4324) file: [77db8967] check-in: [2732af0e] user: drh branch: trunk, size: 66984
12:31
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321) file: [7cc1e0b3] check-in: [e38ef81b] user: danielk1977 branch: trunk, size: 66801
2007-08-28
23:28
The shared_err test runs with no errors. But a potential deadlock has been discovered and is still unfixed. (CVS 4317) file: [347d2c1d] check-in: [f84550be] user: drh branch: trunk, size: 66835
22:24
Clean up the locking in the btree logic. (CVS 4316) file: [0bbc8fbb] check-in: [967ab229] user: drh branch: trunk, size: 66645
02:27
Work toward correct btree locking in a multithreaded environment. (CVS 4307) file: [bffdf7b6] check-in: [b8cc493b] user: drh branch: trunk, size: 66541
2007-08-27
23:26
Work around problem with forward declarations of constants in MSVC in the amalgamation. Ticket #2574. (CVS 4304) file: [2889abf9] check-in: [dc80b2e1] user: drh branch: trunk, size: 66366
2007-08-24
11:52
Select the default page size for new databases based on the sector-size and IOCAP flags. (CVS 4286) file: [692f0a76] check-in: [13dda2e8] user: danielk1977 branch: trunk, size: 66367
03:51
The win32 driver compiles but does not yet work well. Many bugs fixed. (CVS 4282) file: [b040c378] check-in: [3a68fcdd] user: drh branch: trunk, size: 66213
2007-08-23
02:47
Improvements to memory leak detection. The --backtrace=NNN option is now recognized by tester.tcl. Memory leak summaries are automatically written to the file ./memleak.txt and each leak is tagged with the test in which it occurred. The quick.test script runs on Linux with no errors and no leaks. (CVS 4273) file: [8b418029] check-in: [21f6b310] user: drh branch: trunk, size: 66233
2007-08-21
19:33
The sqlite3_value object now carries an sqlite3* pointer to use for recording malloc failures. This eliminates the need to pass sqlite3* pointers into many internal interfaces. Also added more mutexing. (CVS 4263) file: [b0aeed4f] check-in: [92872761] user: drh branch: trunk, size: 66174
10:44
Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) file: [14b48bfc] check-in: [fbbd5bda] user: drh branch: trunk, size: 65989
2007-08-20
14:23
Changes to crash-test io backend (test6.c) so that it works with the sqlite3_vfs interface. (CVS 4247) file: [d2e8a63e] check-in: [40f66ada] user: danielk1977 branch: trunk, size: 66005
05:36
Fix full_fsync() related functionality broken as part of the migration to sqlite3_vfs. (CVS 4243) file: [93724b68] check-in: [cb24cda1] user: danielk1977 branch: trunk, size: 66002
2007-08-18
10:59
Further progress on migration to sqlite3_vfs. (CVS 4242) file: [c155bc8e] check-in: [a258c4ec] user: danielk1977 branch: trunk, size: 66091
2007-08-17
15:53
Begin migration to using sqlite3_vfs interface. (CVS 4240) file: [6468d566] check-in: [af3e3c7a] user: danielk1977 branch: trunk, size: 66844
2007-08-16
12:24
Combine sqlite3DbOfVdbe() and sqlite3VdbeDb() into a single function. (CVS 4236) file: [c6d50887] check-in: [ba80ee59] user: drh branch: trunk, size: 66494
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [aa079bb6] check-in: [77b16713] user: danielk1977 branch: trunk, size: 66611
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: [e59e5065] check-in: [deb7ecd6] user: drh branch: trunk, size: 66503
2007-08-15
17:08
Modify the crash-recovery test code in test6.c for 3.5. Also change some other code to use the new sqlite3_io_methods interface. Lots of things are broken now. (CVS 4228) file: [8e6dbe3d] check-in: [af9503da] user: danielk1977 branch: trunk, size: 66224
2007-08-13
11:10
Remove a memory allocation from sqlite3VdbeIOTraceSql(). This means that when doing I/O tracing, the text of an SQL statement is truncated to the first 1000 characters. But it also means tracing works in an out-of-memory situation. (CVS 4210) file: [d626e0f8] check-in: [578da247] user: drh branch: trunk, size: 66142
2007-08-07
17:13
Remove all tabs from source code files. Ticket #2556. (CVS 4198) file: [6a29a0e3] check-in: [7550dd1d] user: drh branch: trunk, size: 66130
2007-08-03
07:33
Avoid reloading the schema when an expired statement is finalized or reset. This is only necessary when the in-memory schema does not match the file-system schema. (CVS 4194) file: [e28c03db] check-in: [61de5b52] user: danielk1977 branch: trunk, size: 66123
2007-06-27
15:53
Allow ALTER TABLE on virtual tables. (CVS 4142) file: [ca1d673f] check-in: [37d1f9f3] user: danielk1977 branch: trunk, size: 66196
2007-06-20
11:56
Additional changes for ticket #2426. (CVS 4098) file: [c580d360] check-in: [79debf95] user: drh branch: trunk, size: 65992
2007-06-15
14:53
Fix for #2415. The progress handler should abandon only the current query, not all active queries. (CVS 4067) file: [b4eda47b] check-in: [115e19fe] user: danielk1977 branch: trunk, size: 65971
2007-06-13
16:49
Have queries interrupted by the progress-handler return SQLITE_INTERRUPT. Rollback any active transaction if a DML statement returns SQLITE_INTERRUPT. (CVS 4061) file: [97dcf965] check-in: [33454b56] user: danielk1977 branch: trunk, size: 65315
15:22
Fix for #2409. Return SQLITE_IOERR_BLOCKED instead of SQLITE_BUSY in cases where failure to obtain a database lock leaves the cache in an inconsistent state. See additional information at CorruptionFollowingBusyError. (CVS 4060) file: [85b374b6] check-in: [ce2c9925] user: danielk1977 branch: trunk, size: 65281
2007-05-23
07:20
Additional comments ono the SQLITE_MIXED_ENDIAN_64BIT_FLOAT issue. (CVS 4029) file: [a978d170] check-in: [dd48a31e] user: drh branch: trunk, size: 65141
2007-05-16
17:50
Avoid passing a negative value to isspace() in a couple places. (CVS 4016) file: [47f483c3] check-in: [d5db8be3] user: danielk1977 branch: trunk, size: 64418
2007-05-08
20:59
Disable tracing pragmas when not in debug mode. This eliminates an external dependency on stdout. (CVS 3959) file: [62011e2c] check-in: [5a0fe985] user: drh branch: trunk, size: 64388
2007-05-04
13:15
Eliminate all uses of sprintf() and strcpy(). These were not being misused. But getting rid of them removes a library dependency. And it avoids warnings from the OpenBSD compiler. Ticket #2336. (CVS 3916) file: [c432e17f] check-in: [ba4845b3] user: drh branch: trunk, size: 64361
12:05
Test cases and corrections to IO and malloc() error handling in incremental blob IO functions. (CVS 3915) file: [966d166f] check-in: [641e5528] user: danielk1977 branch: trunk, size: 64321
11:59
Add compile-time option -DSQLITE_MIXED_ENDIAN_64BIT_FLOAT=1 that uses mixed-endian doubles. This is needed on ARM7 to make database file formats compatible with all other processors. Tickets #2278 and #2335. (CVS 3913) file: [51acaab4] check-in: [2a178d0c] user: drh branch: trunk, size: 64282
2007-05-02
13:30
Add support for zero-blobs to the OP_MakeRecord opcode. First test cases of zeroblob functionality. (CVS 3897) file: [8c7f22e2] check-in: [e6d560dd] user: drh branch: trunk, size: 63592
2007-04-18
14:24
Minor changes (mainly to assert() macros) to handle malloc failure in vtab operations. (CVS 3851) file: [ef59545f] check-in: [175156d1] user: danielk1977 branch: trunk, size: 62587
2007-04-05
11:25
Improvements to coverage testing. (CVS 3810) file: [0bae26de] check-in: [38af156d] user: drh branch: trunk, size: 62527
2007-04-04
01:27
Test coverage improvements. (CVS 3807) file: [2d58a815] check-in: [25f49acc] user: drh branch: trunk, size: 62663
2007-04-01
23:49
Fix some warnings about unused and uninitialized variables. (CVS 3788) file: [464df661] check-in: [18aec1dd] user: drh branch: trunk, size: 62830
2007-03-30
18:42
Fix a memory leak in multi-database commit. Also enhance a comment that explains why a particular valgrind error is harmless. (CVS 3771) file: [a77bf702] check-in: [28c7ed1e] user: drh branch: trunk, size: 62822
14:06
Refactoring the btree and pager routines into distinct two-phase commit routines. We've always done a two-phase commit - this change is just making that more apparent in the code. (CVS 3762) file: [5efa6d0f] check-in: [66b3ad09] user: drh branch: trunk, size: 62822
11:23
Remove the anonymous union from the sqlite3_value structure since some compilers are unable to deal with it. (CVS 3758) file: [d768c22c] check-in: [6b995259] user: drh branch: trunk, size: 62735
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: [2cf328d4] check-in: [ad4a6b1a] user: drh branch: trunk, size: 62709
2007-03-27
16:19
Test handling of IO errors that occur in OsDelete() or OsTruncate() operations. Also use an anonymous file for temporary storage during a VACUUM. (CVS 3729) file: [1a50dce8] check-in: [b24a6e7b] user: danielk1977 branch: trunk, size: 62702
13:36
More strict aliasing fixes. The single source file library now runs successfully with -fstrict-alias. (CVS 3725) file: [b9817708] check-in: [c8a8a189] user: drh branch: trunk, size: 62395
2007-03-26
22:05
Modify sources to that they can be combined into a single sqlite3.c source file. Eliminate all type-pruned pointer warnings. (CVS 3722) file: [b196911d] check-in: [0b832e21] user: drh branch: trunk, size: 62348
2007-03-01
00:29
Additional I/O Tracing support. (CVS 3667) file: [666f0753] check-in: [ed915f57] user: drh branch: trunk, size: 62151
2007-01-09
14:01
When an automatic re-prepare occurs, take care not to reset the internal schema symbol table. Ticket #2156. This change also includes some debugging enhancements. (CVS 3578) file: [c5324d62] check-in: [43fe7fc1] user: drh branch: trunk, size: 61447
2007-01-08
21:07
Fix a critical bug in sqlite3_prepare_v2 that can lead to segfaults when the schema changes and the statement is recompiled automatically. Ticket #2154. (CVS 3576) file: [5085f15a] check-in: [3401388d] user: drh branch: trunk, size: 61599
2006-11-09
00:24
First cut at adding the sqlite3_prepare_v2() API. Test cases added, but more testing would be useful. Still need to update the documentation. (CVS 3506) file: [05cc6f0f] check-in: [f1efae92] user: drh branch: trunk, size: 61464
2006-10-27
14:06
Changes directed toward optimizing IS NULL terms in WHERE clauses. (CVS 3492) file: [78c744f1] check-in: [4d336e9e] user: drh branch: trunk, size: 60822
2006-09-23
21:44
Fix a bug in the handling of I/O errors introduced by the addition of extended error codes in check-in (3422). (CVS 3438) file: [6fcc4798] check-in: [20d7b294] user: drh branch: trunk, size: 61001
2006-09-15
07:28
Add support for extended result codes - additional result information carried in the higher bits of the integer return codes. This must be enabled using the sqlite3_extended_result_code() API. Only a few extra result codes are currently defined. (CVS 3422) file: [7d15dcf0] check-in: [ba579ddc] user: drh branch: trunk, size: 60931
2006-09-14
16:57
Minor build fixes. (CVS 3419) file: [736d6d07] check-in: [3564b07c] user: adamd branch: trunk, size: 60892
2006-08-13
19:04
Add vdbeaux.c to the list of files that must be compiled with -DSQLITE_TEST=1 in order to generate testfixture. Do not require sqlit3OsDelete() to succeed on a multi-database commit. (Ticket #1917) (CVS 3351) file: [9fab6142] check-in: [dfc833ac] user: drh branch: trunk, size: 60866
2006-08-08
15:42
Fix an reference to an undefined variable introduced by the previous checkin. (CVS 3343) file: [d56304b5] check-in: [73ff3452] user: drh branch: trunk, size: 60858
13:51
Remove most static and global variables from a pure build. There are still a number of static and global variables used for testing. (CVS 3342) file: [e850cdfa] check-in: [76e4d418] user: drh branch: trunk, size: 60832
2006-07-26
13:43
More work toward getting sqlite3_interrupt() to work from separate threads. Ticket #1897. (CVS 3336) file: [f3d25be0] check-in: [e431131d] user: drh branch: trunk, size: 60824
01:39
Initial attempt at making sqlite3_interrupt() work even when called from a separate thread. (CVS 3335) file: [10479446] check-in: [35fd67d7] user: drh branch: trunk, size: 60854
2006-07-25
15:14
Allow database writes from within virtual table module xSync() callbacks. (CVS 3334) file: [0088120c] check-in: [d5a608d0] user: danielk1977 branch: trunk, size: 60868
2006-07-08
17:06
Allow virtual table implementations to overload function that use a column of the virtual table as their first argument. Untested. (CVS 3322) file: [51722bb3] check-in: [12cc7af4] user: drh branch: trunk, size: 60197
2006-06-26
19:10
Remove the sqlite3_module.zName field which was used only for debugging. (CVS 3297) file: [bb0a7b80] check-in: [74a3961f] user: drh branch: trunk, size: 59800
11:17
Fix trivial compiler warnings. (CVS 3295) file: [d957835c] check-in: [3538beac] user: danielk1977 branch: trunk, size: 59802
2006-06-24
11:51
A few more test cases to improve coverage of virtual table module related code. (CVS 3292) file: [bac87915] check-in: [255aa912] user: danielk1977 branch: trunk, size: 59848
2006-06-23
11:34
Fix some memory leaks that occur when malloc() fails. (CVS 3286) file: [1144cee0] check-in: [b56cc035] user: danielk1977 branch: trunk, size: 59877
08:05
Add tests and fixes for handling malloc() failures related to the virtual table feature. (CVS 3285) file: [d8cf95bc] check-in: [5d1d9071] user: danielk1977 branch: trunk, size: 59811
2006-06-20
11:01
Modifications so that compilation and testing with the various OMIT macros defined works. (CVS 3276) file: [2e4cb97e] check-in: [c6ea353b] user: danielk1977 branch: trunk, size: 59686
2006-06-16
16:08
Add code to invoke the virtual table transaction interface. Untested at this point. (CVS 3261) file: [dc5cfd11] check-in: [61251402] user: danielk1977 branch: trunk, size: 59685
2006-06-15
13:22
Asserts added that verify that the code works correctly that ticket #1849 claims is wrong. (CVS 3254) file: [85f2184f] check-in: [d145dc1c] user: drh branch: trunk, size: 59519
2006-06-14
15:14
Fix segfault introduced in (3243). (CVS 3245) file: [de49c194] check-in: [e5fff87d] user: danielk1977 branch: trunk, size: 59447
13:03
Add the opcode OP_VUpdate and replace the xInsert/xDelete members of sqlite3_module with xUpdate. (CVS 3242) file: [ba6e06a6] check-in: [418f3ca8] user: danielk1977 branch: trunk, size: 59447
2006-06-13
23:51
The echo module test is now running. Added the tclvar module test but have not yet done anything with it. (CVS 3234) file: [c9474fd2] check-in: [29199eee] user: drh branch: trunk, size: 59361
10:24
Add implementations for opcodes required for linear scans of virtual tables. (CVS 3223) file: [0168d770] check-in: [1f20e183] user: danielk1977 branch: trunk, size: 59103
01:04
Progress toward getting the virtual-table code generator to work. (CVS 3220) file: [bcad5264] check-in: [3532f134] user: drh branch: trunk, size: 59097
2006-06-12
21:59
Added code to iterate through virtual tables. All regression tests pass but the new code is completely untested. (CVS 3219) file: [60f84a2d] check-in: [01096543] user: drh branch: trunk, size: 58994
2006-03-17
13:56
Miscellaneous code cleanup. (CVS 3143) file: [4002e6b1] check-in: [8f60139f] user: drh branch: trunk, size: 58741
2006-03-15
22:44
Performance improvement in sqlite3VdbeAddOp(). (CVS 3138) file: [2ee7d951] check-in: [6bcbe8fc] user: drh branch: trunk, size: 58469
2006-03-13
12:54
Additional changes due to Coverity scans. (CVS 3130) file: [db9dc285] check-in: [a69f697d] user: drh branch: trunk, size: 58433
2006-03-03
21:38
EXPLAIN sets the length of its text return values correctly. Ticket #1583. (CVS 3123) file: [e7f448c5] check-in: [34b560e8] user: drh branch: trunk, size: 58409
2006-02-24
03:09
Additional compiler warnings suppressed. (CVS 3111) file: [8d572693] check-in: [a359b181] user: drh branch: trunk, size: 58378
02:53
Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) file: [43385085] check-in: [4b22e4b8] user: drh branch: trunk, size: 58318
2006-02-10
02:27
Add the column_origin_name() etc. APIs. (CVS 3069) file: [95f4ed0b] check-in: [82f502cd] user: danielk1977 branch: trunk, size: 58333
2006-01-26
10:35
Handle a malloc() failure in resizeOpArray(). (CVS 3030) file: [9bf50cdb] check-in: [5cecb452] user: danielk1977 branch: trunk, size: 58259
2006-01-25
22:50
Minor comment changes and code optimizations. (CVS 3029) file: [f2ffd1fd] check-in: [9e55dcd1] user: drh branch: trunk, size: 58001
2006-01-24
16:37
Handle errors in saving cursor positions during a rollback by aborting all active statements. (CVS 3027) file: [bc901377] check-in: [5df9f022] user: danielk1977 branch: trunk, size: 57976
2006-01-23
21:44
More progress toward getting SQLITE_OMIT_FLOATING_POINT to pass tests. Ticket #1621. (CVS 3014) file: [0c27d3b3] check-in: [b52674e5] user: drh branch: trunk, size: 57944
15:25
Further coverage improvements for pager.c and another IO error bug fix. (CVS 3001) file: [2f12c17b] check-in: [a9ec5ee4] user: danielk1977 branch: trunk, size: 57898
2006-01-20
17:56
Fix some compiler warnings. (CVS 2983) file: [1dce6e5f] check-in: [b7bdac0a] user: drh branch: trunk, size: 57797
16:32
Fix another couple of IO or malloc() failure problems in a shared-cache context. (CVS 2982) file: [9d926400] check-in: [7e34163a] user: danielk1977 branch: trunk, size: 57909
10:55
Handle some of the IO error conditions that may occur in a shared-cache context. (CVS 2980) file: [d9a757ed] check-in: [97491d4e] user: danielk1977 branch: trunk, size: 57742
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: [1b3fe25f] check-in: [ac090f2a] user: danielk1977 branch: trunk, size: 55678
2006-01-16
15:14
Fix some of the issues raised in #1615. (CVS 2959) file: [723e0ec7] check-in: [0d5d83bc] user: danielk1977 branch: trunk, size: 55798
2006-01-15
13:13
Fix a buffer-overrun that could occur after a malloc() failure. (CVS 2948) file: [bfad18ca] check-in: [66252221] user: danielk1977 branch: trunk, size: 55780
2006-01-13
06:33
Minor modification to restoreOrClearCursorPosition() to improve efficiency. Do not allocate the extra 8-bytes if memory-management is not enabled. (CVS 2936) file: [1d765d67] check-in: [dd705955] user: danielk1977 branch: trunk, size: 55775
2006-01-12
20:28
Performance boost in sqlite3VdbeRecordCompare. (CVS 2929) file: [23ff1260] check-in: [14c42307] user: drh branch: trunk, size: 55776
12:43
About a 2.5% speed improvement by reducing the number of sqlite3ThreadData calls in the parser. (CVS 2924) file: [b3ac0058] check-in: [0caa1994] user: drh branch: trunk, size: 55178
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: [fca3a799] check-in: [5d9c6aa9] user: drh branch: trunk, size: 55197
2006-01-09
06:29
Rename DbSchema to "Schema" and SqliteTsd to "ThreadData". (CVS 2893) file: [e4b8f492] check-in: [82b81f69] user: danielk1977 branch: trunk, size: 55130
2006-01-07
18:48
Invalidate all VDBE cursor row caches in between calls to sqlite3_step() since the emphemeral content that those caches point to might change if the statement is READ UNCOMMITTED. (CVS 2886) file: [cb57a0b6] check-in: [0ae46131] user: drh branch: trunk, size: 55081
2006-01-06
14:32
Change the OS interface layer to use traditional direct function call implementations instead of the more complicated virtual function table. Omit the asynchronous I/O demo. (CVS 2870) file: [a4eea656] check-in: [2529c2e1] user: drh branch: trunk, size: 55051
2006-01-02
18:24
Additional tests for descending indices. Comment changes. (CVS 2850) file: [7d55232a] check-in: [2622c524] user: drh branch: trunk, size: 55069
2005-12-30
16:28
Add part of the btree layer of the shared-cache feature. (CVS 2848) file: [e7c116d4] check-in: [2afcad99] user: danielk1977 branch: trunk, size: 54943
2005-12-29
19:23
Add serial-types 8 and 9 for integer constants of 0 and 1 that use zero bytes of storage. Make the default file format 4. Add the SQLITE_DEFAULT_FILE_FORMAT compile-time option to lower the default file format number so that newly created databases can be read and written by older versions of SQLite. (CVS 2845) file: [9dc10a70] check-in: [ae301db8] user: drh branch: trunk, size: 54955
2005-12-21
18:36
Bug fixes and additional testing of descending indices. (CVS 2841) file: [8fd4f36d] check-in: [5638a11e] user: drh branch: trunk, size: 54620
2005-12-16
15:24
Verify that the rollback-hook is invoked correctly when a malloc() failure occurs. (CVS 2824) file: [c38276e0] check-in: [83c8ae5b] user: danielk1977 branch: trunk, size: 54604
06:54
Add the sqlite3_rollback_hook() API. Still requires further testing. (CVS 2823) file: [c878807f] check-in: [3baa3ff3] user: danielk1977 branch: trunk, size: 54830
01:06
Initial infrastructure for recognizing DESC indices and being able to read and write older databases that specify DESC indices but do not really use them. Nothing is close to working yet. (CVS 2822) file: [722736cd] check-in: [cd110aa2] user: drh branch: trunk, size: 54593
2005-12-09
20:02
Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810) file: [f714ee9e] check-in: [83a59151] user: drh branch: trunk, size: 54606
14:25
Many small changes to ensure memory is not leaked after malloc() fails. (CVS 2808) file: [b0a4a4b1] check-in: [601c3354] user: danielk1977 branch: trunk, size: 54586
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: [90143aaf] check-in: [e1606658] user: danielk1977 branch: trunk, size: 54526
2005-11-30
03:20
Restructure the OS interface yet again. This time make the OsFile object a virtual base class which is subclassed for unix, windows, and the crash test simulator. Add the new file "os.c" for common os layer code. Move all OS-specific routines into the sqlite3Os structure. (CVS 2795) file: [0c4af4af] check-in: [bd8740d1] user: drh branch: trunk, size: 53035
2005-11-29
03:13
Make the OsFile structure opaque with its internal structure known only to the appropriate os_*.c implementation. Omit the os_unix.h and os_win.h include files. The crash tests are broken by this patch. (CVS 2791) file: [09b9bcfe] check-in: [058f3175] user: drh branch: trunk, size: 53049
2005-11-26
00:25
Modify the OS layer so that I/O routines are called through a virtual function table. The os_test.c module has been replaced by test6.c. The crash tests are busted now and need to be fixed. (CVS 2785) file: [3dca9c04] check-in: [1f69aec2] user: drh branch: trunk, size: 53096
2005-11-24
22:22
Reduce the number of distinct token symbols in the parser so that the parser can store tokens in a single byte and thus be smaller in size. (CVS 2776) file: [eb5f7185] check-in: [2dfc9863] user: drh branch: trunk, size: 53064
2005-10-05
11:35
Fix an assert or memory leak that occurs when trying to EXPLAIN a statement other than a SELECT that outputs results. Examples of such statements include PRAGMA integrity_check or INSERT/DELETE/UPDATE with PRAGMA count_changes=ON. (CVS 2743) file: [eb1ce3a4] check-in: [533a85ee] user: drh branch: trunk, size: 53034
2005-09-20
17:42
Code cleanup and simplification. Three new Mem opcodes added. The sqlite3VdbeJumpHere function added. (CVS 2730) file: [2b728d82] check-in: [2471957f] user: drh branch: trunk, size: 52988
2005-09-17
17:58
Fix a memory leak that occurs after malloc fails. (CVS 2713) file: [57a6ced8] check-in: [85b931bf] user: drh branch: trunk, size: 52777
15:20
Changes to make corruption errors easier to track down. (CVS 2709) file: [b1db8b87] check-in: [c0733000] user: drh branch: trunk, size: 52671
2005-09-16
02:38
Fix a whole host of newly discovered memory leaks the occur after a failure of realloc(). (CVS 2696) file: [e3a815a8] check-in: [4686d649] user: drh branch: trunk, size: 52666
00:27
Fix a memory leak: a failure to deallocate the P3 parameter on a call to sqlite3VdbeChangeP3. (CVS 2695) file: [df2bda6f] check-in: [714254cb] user: drh branch: trunk, size: 52638
2005-09-10
16:46
Add the experimental EXPLAIN QUERY PLAN diagnostic capability. (CVS 2685) file: [670264f8] check-in: [986efb7b] user: drh branch: trunk, size: 52685
2005-09-08
12:38
While doing a transaction comment, use fdatasync() instead of fsync() in cases there the file size is unchanged. (CVS 2673) file: [a0aaf135] check-in: [3c555a87] user: drh branch: trunk, size: 52588
2005-09-07
21:22
Rewrite the aggregate handling logic so that it runs in O(1) space. This is the first cut at the code. Many regression tests fail. (CVS 2662) file: [11db0de9] check-in: [17039ec3] user: drh branch: trunk, size: 52576
2005-09-06
20:36
Cleanup the processing of MEM_Agg elements. (CVS 2660) file: [2cfc66b3] check-in: [7ecf3654] user: drh branch: trunk, size: 56811
2005-09-05
20:06
Fix bugs introduced by checkin (2656) and do some modest code enhancements. (CVS 2657) file: [b23bb870] check-in: [7b56763a] user: drh branch: trunk, size: 57125
2005-09-01
12:16
All regression tests now pass with the new bounded-memory sort code. There is still lots of opportunity for optimization, however. (CVS 2654) file: [afb689d2] check-in: [81259a01] user: drh branch: trunk, size: 57107
03:07
Sorting is now done using a sorting index rather than loading the entire result set into memory and doing a merge sort. The old merge sort technique was a carry-over from SQLite version 1. The new method uses a bounded amount of memory and scales to much larger result sets. There are still errors: some 39 regression tests fail. (CVS 2653) file: [68d5d088] check-in: [09db0a24] user: drh branch: trunk, size: 56865
2005-08-28
01:38
Improvements to the formatting and layout of the code in the previous checkin. (CVS 2636) file: [192e0dbe] check-in: [73b430de] user: drh branch: trunk, size: 57218
01:34
Add an assert to verify that floating point values and integers use the same byte order. Add a comment to the SELECT code generator. (CVS 2635) file: [bbed7e89] check-in: [07b48921] user: drh branch: trunk, size: 57211
2005-08-27
16:36
Disable synchronous writes to the master journal when PRAGMA synchronous=OFF for all database files. Ticket #1375. (CVS 2630) file: [ae051fd1] check-in: [644b96aa] user: drh branch: trunk, size: 56953
2005-08-19
01:07
More test coverage enhancements. (CVS 2600) file: [87462469] check-in: [0b6cd5ac] user: drh branch: trunk, size: 56826
2005-08-18
18:15
Comment fixes. No changes to the underlying code. (CVS 2598) file: [6b2e54ac] check-in: [b865e243] user: drh branch: trunk, size: 57206
2005-08-14
01:20
The case_sensitive_like pragma added. Test cases added for the LIKE optimization. (CVS 2592) file: [c7ea38ba] check-in: [72ee21c0] user: drh branch: trunk, size: 57206
2005-08-12
22:56
Optimize LIKE and GLOB operators in the WHERE clause. Code passes all regression tests but still needs additional tests. (CVS 2581) file: [d53139d8] check-in: [3edbe8d6] user: drh branch: trunk, size: 57188
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: [3732a865] check-in: [94c120bb] user: drh branch: trunk, size: 57974
2005-06-14
17:47
Fix an NDEBUG versus SQLITE_DEBUG confusion issue. (CVS 2516) file: [38332d91] check-in: [833c0160] user: drh branch: trunk, size: 58172
2005-06-12
21:35
Update older opcode names to be more meaningful in light of the latest code design. (CVS 2506) file: [c99e32ab] check-in: [36f2da1f] user: drh branch: trunk, size: 58167
2005-06-07
01:43
Do not open a statement journal unless absolutely necessary. (CVS 2499) file: [d078d96e] check-in: [989573a5] user: drh branch: trunk, size: 58159
2005-05-27
09:41
Minor changes to help build and test SSE. (CVS 2487) file: [84a13810] check-in: [3ac4a212] user: danielk1977 branch: trunk, size: 56891
2005-05-26
12:37
Fix minor problems with the SSE hooks. (CVS 2483) file: [73b11986] check-in: [3516ca29] user: danielk1977 branch: trunk, size: 56857
2005-05-21
18:32
Speed improvements as described by tickets #1257 and #1258. These changes help some but are nowhere near the 23% claimed in the tickets. (CVS 2469) file: [78704946] check-in: [3fa177c5] user: drh branch: trunk, size: 56784
2005-05-19
08:43
Always use a more specific type (P3_FUNCDEF) instead of P3_POINTER as the P3 type of a vdbe instruction. (CVS 2463) file: [77dc2e0f] check-in: [79a41674] user: danielk1977 branch: trunk, size: 56005
2005-04-15
12:04
Correctly store large integers. Ticket #1212. (CVS 2445) file: [b4d9b9a9] check-in: [00e20690] user: drh branch: trunk, size: 55838
2005-04-01
10:47
Make the ORDER BY clause return equal elements in the same order they were seen (a stable sort). It was returning them in exactly the reverse order. (CVS 2439) file: [3efd3cff] check-in: [e8391491] user: drh branch: trunk, size: 55838
2005-03-31
22:26
Add a "const" declaration to a constant. Fix a typo in a comment. (CVS 2438) file: [482ae822] check-in: [67aaa269] user: drh branch: trunk, size: 55818
2005-03-29
13:07
Change 'stack' to the more descriptive 'no-push' in vdbe.c. (CVS 2429) file: [f07ea8a5] check-in: [7e54d3c7] user: danielk1977 branch: trunk, size: 55812
08:26
Reduce the space allocated for the runtime virtual machine stack. (CVS 2428) file: [b28883d9] check-in: [7d6818da] user: danielk1977 branch: trunk, size: 55809
2005-03-28
08:44
Modifications to reduce memory consumption. (CVS 2422) file: [0932f570] check-in: [0fd5ce4e] user: danielk1977 branch: trunk, size: 53922
2005-03-19
14:45
Preparations for the release of version 3.2.0. (CVS 2400) file: [91013922] check-in: [90a00e90] user: drh branch: trunk, size: 52759
2005-03-16
12:15
Fix some memory leaks that can occur if a memory allocation fails. (CVS 2388) file: [3c2f1d5d] check-in: [9a358fc3] user: danielk1977 branch: trunk, size: 52752
2005-03-09
12:26
Support for a future ALTER TABLE command to add columns with default values. (CVS 2367) file: [30a9a6f6] check-in: [9d5abc1d] user: danielk1977 branch: trunk, size: 52664
2005-01-29
08:32
Modify sub-query handling. Tickets #1083 and #1084. (CVS 2286) file: [8d8cc899] check-in: [b1b50f31] user: danielk1977 branch: trunk, size: 52465
2005-01-26
21:55
Propagate detected database corruption up through the call stack. (CVS 2279) file: [083c5fcd] check-in: [2c54aba5] user: drh branch: trunk, size: 52135
17:47
An optimization to sqlite3VdbeSerialType(). (CVS 2278) file: [82e2c87e] check-in: [db367738] user: drh branch: trunk, size: 52035
2005-01-24
10:25
Modifications and bugfixes so that the test suite passes with the TCL statement cache turned on. (CVS 2271) file: [30cd8af3] check-in: [d5233e07] user: danielk1977 branch: trunk, size: 52083
00:28
Change the TCL interface so that it can cache VMs and reuse them without recompiling. But for now leave the cache turned off by default. (CVS 2269) file: [acf9fe56] check-in: [8db6bfef] user: drh branch: trunk, size: 51811
2005-01-23
19:04
Fix a bug in change counting that comes up when sqlite3_finalize() is called right after sqlite3_reset(). (CVS 2266) file: [f37d3dde] check-in: [1a64295e] user: drh branch: trunk, size: 51570
13:14
ATTACH and DETACH cause prepared statements to expire. sqlite3_finalize() can now be called right after sqlite3_reset(). (CVS 2265) file: [442782a4] check-in: [6c631b86] user: drh branch: trunk, size: 51558
2005-01-22
03:03
Add the experimental sqlite3_expired() API. (CVS 2263) file: [fcadffa6] check-in: [df648d50] user: drh branch: trunk, size: 51533
2005-01-20
22:48
Bug fixes and enhancements entered while on jury recess. (CVS 2246) file: [d01eff90] check-in: [38401dfb] user: drh branch: trunk, size: 50988
2005-01-13
11:07
Test cases to improve coverage of pager.c. (CVS 2205) file: [6c294f73] check-in: [0428a148] user: danielk1977 branch: trunk, size: 50950
2005-01-12
09:10
Tests to improve coverage of vdbeaux.c. (CVS 2201) file: [0675db9f] check-in: [2b3e21ce] user: danielk1977 branch: trunk, size: 50950
2005-01-11
16:54
Improved test coverage for vdbeaux.c. (CVS 2195) file: [60c24559] check-in: [3f46cd77] user: drh branch: trunk, size: 51093
2004-12-07
12:29
Remove the unused sqlite3_context.isStep element. (CVS 2156) file: [a7c4c907] check-in: [7b20f2b7] user: drh branch: trunk, size: 51031
2004-11-22
05:26
Have tests pass when SQLITE_OMIT_MEMORYDB is defined. (CVS 2131) file: [dc06bbb8] check-in: [9df837c0] user: danielk1977 branch: trunk, size: 51059
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: [c6da55e0] check-in: [b0506bdd] user: drh branch: trunk, size: 50948
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: [544ff663] check-in: [be661acf] user: drh branch: trunk, size: 50948
2004-10-06
15:41
Convert many constants to have type "const". (CVS 2006) file: [73928b98] check-in: [d790c84c] user: drh branch: trunk, size: 50769
2004-10-05
17:37
Rearrange memory allocation in sqlite3VdbeMakeReady to try to work around some byte-alignment problems on Sparc. (CVS 2002) file: [edf87d36] check-in: [f623d6e7] user: drh branch: trunk, size: 50763
2004-09-30
13:43
Allow functions to be created when there are outstanding VMs. (Ticket #926) Fix problems with sqlite3_errcode(). Add tests for sqlite3_errcode(). (CVS 1989) file: [a43a2989] check-in: [d0f1dc58] user: drh branch: trunk, size: 50803
2004-09-25
14:39
Code cleanup: get rid of the sqlite3SetNString utility function. (CVS 1984) file: [598af6c2] check-in: [9ef4c24a] user: drh branch: trunk, size: 50809
2004-09-24
22:32
Optimizations to vdbeaux.c and printf.c (CVS 1980) file: [dc384820] check-in: [eabc77c9] user: drh branch: trunk, size: 50791
19:39
Improvements to the debugging code. (CVS 1979) file: [082d63e0] check-in: [bdc3bb07] user: drh branch: trunk, size: 50893
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: [3b67c863] check-in: [4871c77f] user: drh branch: trunk, size: 50868
00:50
Merge the ListPush and ListPop VDBE opcodes into ContextPush and ContextPop. (CVS 1972) file: [f312d91a] check-in: [eb9b501a] user: drh branch: trunk, size: 50509
2004-09-15
13:38
The callback on sqlite3_trace() is invoked the first time sqlite3_step() is called after sqlite3_prepare() or sqlite3_reset(). Ticket #900. (CVS 1960) file: [0fbc50cf] check-in: [0cc2f40e] user: drh branch: trunk, size: 50594
2004-09-08
15:09
Always cast 0 to (char*)0 when it is an argument in a varargs function. (CVS 1948) file: [066766b0] check-in: [a1f53252] user: drh branch: trunk, size: 50701
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: [4080a616] check-in: [3ddf5a9d] user: drh branch: trunk, size: 50694
2004-09-02
14:57
Transactions commit on the last sqlite3_step(), not on sqlite3_finalize(). This allows the sqlite3_step() to return SQLITE_BUSY if the commit is blocked by a lock. Ticket #885. (CVS 1928) file: [77eaaf62] check-in: [d1b29156] user: drh branch: trunk, size: 50687
2004-08-21
17:54
Optimizations to the code generator. (CVS 1899) file: [022c484d] check-in: [bd6649c5] user: drh branch: trunk, size: 50006
2004-08-20
16:02
Add support for named wildcards in SQL statements. (CVS 1897) file: [cc86e59c] check-in: [d3be0b7c] user: drh branch: trunk, size: 49836
2004-08-08
20:22
Make sure the argument to ctype.h macros is always an unsigned character. Ticket #839. (CVS 1881) file: [892a49f7] check-in: [b0659738] user: drh branch: trunk, size: 49706
2004-07-24
14:35
Fix more problems with deferred execution of CREATE. Still need to do DROP. There is now a memory leak. (CVS 1865) file: [daf40a29] check-in: [6db3f122] user: drh branch: trunk, size: 49701
2004-06-30
11:41
Add the crashtest target to Makefile.in. Add LL suffix to long long constants in the vdbe. Comment changes to vdbeaux.c. (CVS 1780) file: [4de85e30] check-in: [42553001] user: drh branch: trunk, size: 49340
11:14
When a statement causes a ROLLBACK due to an ON CONFLICT clause, other active VMs abort. (CVS 1778) file: [f97b4b5e] check-in: [0fedf74e] user: drh branch: trunk, size: 49162
2004-06-28
01:11
Fix a bunch of harmless warnings. (CVS 1749) file: [f9b1b3d4] check-in: [fae7c6e0] user: danielk1977 branch: trunk, size: 48697
2004-06-27
23:50
Fix unitialised variable in sqlite3VdbeFinalize(). (CVS 1747) file: [1e3d0e72] check-in: [95015879] user: danielk1977 branch: trunk, size: 48764
21:31
Remove unused routines from vdbeaux.c. Improve test coverage. (CVS 1746) file: [8b6d2558] check-in: [792b3c75] user: drh branch: trunk, size: 48756
2004-06-26
14:40
Fold in changes submitted by the PHP developers. (CVS 1742) file: [14ff0eb6] check-in: [a4a25708] user: drh branch: version_2, size: 27587
13:51
Fix a problem where a file was not being closed after a malloc() failure. (CVS 1741) file: [e7201e3f] check-in: [3c8512bc] user: danielk1977 branch: trunk, size: 50182
08:38
Remove the 'nMaster' argument from various pager and btree functions. (CVS 1737) file: [51f23399] check-in: [4e207209] user: danielk1977 branch: trunk, size: 50136
2004-06-22
22:04
Be careful to initialize the Mem.xDel field to zero for static Mems. (CVS 1671) file: [f28f7fbc] check-in: [e17ea666] user: drh branch: trunk, size: 50086
13:22
Fix some segfaults that could have occurred after a malloc() failure. (CVS 1661) file: [a7831608] check-in: [80151e72] user: drh branch: trunk, size: 50066
11:29
Add os_test.c. Not activated yet. (CVS 1655) file: [9fe01087] check-in: [d16b8638] user: danielk1977 branch: trunk, size: 50050
2004-06-21
18:14
Fix an uninitialized variable. The variable was harmless, but pedantic error checking in MSVC raised an exception on it. (CVS 1651) file: [bf1f5a48] check-in: [afc398c2] user: drh branch: trunk, size: 50058
10:45
Avoid opening a temp table for aggregate queries with no GROUP BY clause. (CVS 1649) file: [b89e05d8] check-in: [4d02df63] user: danielk1977 branch: trunk, size: 50021
08:18
Ensure sqlite3ErrorMsg() is used to report errors during compilation, sqlite3Error() during execution. Also remove unused param from sqlite3VdbeReset() and Finalize(). (CVS 1647) file: [4e0d90a7] check-in: [7a33daef] user: danielk1977 branch: trunk, size: 49689
06:50
Update sqlite3_changes() to match the documentation and add sqlite3_total_changes(). (CVS 1645) file: [fa9f0b17] check-in: [ae2f4a09] user: danielk1977 branch: trunk, size: 50051
2004-06-19
15:40
Clear up another zero-length array. This seems to fix the segfault in func-13.4 too. (CVS 1641) file: [d2d95f1b] check-in: [70680a34] user: drh branch: trunk, size: 49375
14:49
Omit the sqlite3VdbeCode() routine. Use sqlite3NameFromToken() more to reduce the amount of code. (CVS 1639) file: [cf9caac1] check-in: [99d0436e] user: drh branch: trunk, size: 48991
09:35
Remove the unused 'next_cookie' mechanism. (CVS 1634) file: [82074da2] check-in: [c94a9759] user: danielk1977 branch: trunk, size: 49354
03:33
Update sqlite3_close() API to match documentation. (CVS 1630) file: [b3c13f05] check-in: [61819740] user: danielk1977 branch: trunk, size: 49356
2004-06-16
07:45
Fix two more memory leaks. (CVS 1603) file: [dc0e7d3b] check-in: [98b48704] user: danielk1977 branch: trunk, size: 49426
2004-06-15
16:51
Assorted memory leak fixes. (CVS 1600) file: [3476058d] check-in: [07b90f36] user: danielk1977 branch: trunk, size: 49380
13:36
Memory leak fixes for tests in file select1.test. (CVS 1599) file: [475fb88c] check-in: [59db58eb] user: danielk1977 branch: trunk, size: 49350
11:40
Minor bugfixes and test case adjustments for version 2 test cases to work with version 3. (CVS 1598) file: [765ffa64] check-in: [e21a1813] user: danielk1977 branch: trunk, size: 49584
2004-06-14
13:14
Schema modifications are committed internally when a statement transaction is committed. (CVS 1592) file: [9484c890] check-in: [4cfc5a36] user: danielk1977 branch: trunk, size: 49573
09:41
Bugfix for previous checkin. (CVS 1587) file: [79b0dc52] check-in: [2737505f] user: danielk1977 branch: trunk, size: 49484
09:35
Ensure master journal file is deleted when a transaction is committed. (CVS 1586) file: [71f78da2] check-in: [cb3cbe00] user: danielk1977 branch: trunk, size: 49484
06:03
Ensure the master journal directory is synced. Also, change the master journal format to store journal file names. (CVS 1583) file: [d792de3b] check-in: [73cd0aab] user: danielk1977 branch: trunk, size: 48730
2004-06-13
00:54
More speed improvements. (CVS 1580) file: [7b45d493] check-in: [c5ebc1c0] user: drh branch: trunk, size: 48407
2004-06-12
20:42
The VDBE aggregate functions use an in-memory btree instead of a disk-based btree for improved performance. (CVS 1579) file: [f5fc39d6] check-in: [8029f1e4] user: drh branch: trunk, size: 48404
20:12
Speed up in the handling of VDBE cursors. (CVS 1578) file: [ff7c66b7] check-in: [e42316f5] user: drh branch: trunk, size: 48395
09:25
(1) Modifications to the user-function interface and (2) Internal changes to automatically created indices. (CVS 1575) file: [1d0dbaf7] check-in: [5903f538] user: danielk1977 branch: trunk, size: 48423
00:42
Use the SQLITE_UTF* symbols instead of the old internal TEXT_Utf* symbols. (CVS 1572) file: [fefea411] check-in: [9b84f2f4] user: danielk1977 branch: trunk, size: 49784
2004-06-11
13:19
Have the vdbe aggregator use a btree table instead of a hash table. (CVS 1569) file: [117d0d0a] check-in: [8d56118f] user: danielk1977 branch: trunk, size: 49776
2004-06-10
04:32
When in PAGER_RESERVED state, don't write to the main file when rolling back a statement transaction. (CVS 1560) file: [73764dad] check-in: [adb2bd61] user: danielk1977 branch: trunk, size: 46330
01:30
Add the vdbe_listing and sql_trace pragmas used for debugging. (CVS 1558) file: [6f5b26a6] check-in: [28c3cc08] user: drh branch: trunk, size: 46307
2004-06-09
21:01
If a commit fails due to lock contention right after the COMMIT command, take the database back out of autocommit mode. Do not rollback. This gives the user the chance to try the COMMIT again. (CVS 1551) file: [ca11b435] check-in: [39b4ba95] user: drh branch: trunk, size: 46259
20:03
Turn on the atomic multifile commit logic. It does not work right yet, but it has at least stopped failing asserts. (CVS 1550) file: [6412cbc4] check-in: [3674b25e] user: drh branch: trunk, size: 45655
17:37
Fixes to the file locking. 109 tests are now failing. (CVS 1548) file: [5efecdaf] check-in: [dc076345] user: drh branch: trunk, size: 45406
14:01
Change the MEMORY_DEBUG macro to SQLITE_DEBUG. (CVS 1546) file: [136442a4] check-in: [428b685b] user: drh branch: trunk, size: 45415
09:55
Some progress on user-defined collation sequences. (CVS 1544) file: [8547c18b] check-in: [c634e71f] user: danielk1977 branch: trunk, size: 45415
00:48
Start all transactions and verify all schema cookies near the beginning of of each vdbe program. (CVS 1543) file: [ab8c99fd] check-in: [10861964] user: drh branch: trunk, size: 45367
2004-06-07
16:27
More work on windows locking. Fix some problems with unix locking. There is still an assertion failure on windows locking in attach2.test. (CVS 1539) file: [cd1be846] check-in: [0c2d169c] user: drh branch: trunk, size: 45145
2004-06-06
09:44
Enhance user function API to support association of meta-data with constant arguments and the specification of text encoding preference. The LIKE operator takes advantage of both. (CVS 1534) file: [c47fd543] check-in: [92337d8f] user: danielk1977 branch: trunk, size: 44910
2004-06-05
10:22
Add the sqlite3_set_auxdata() and sqlite3_get_auxdata() APIs. (CVS 1532) file: [185f5ad1] check-in: [c2899b43] user: danielk1977 branch: trunk, size: 44897
2004-06-03
16:08
Untested updates to support atomic multi-file transactions (CVS 1526) file: [55c6d501] check-in: [d57e5252] user: danielk1977 branch: trunk, size: 44561
2004-06-02
01:22
Work toward combining the OP_MakeKey, OP_MakeIdxKey, and OP_MakeRecord opcodes into one. The work is incomplete. (CVS 1524) file: [5842109c] check-in: [165d69a0] user: drh branch: trunk, size: 39467
2004-05-31
23:56
Remove the sqlite3_error_string() API. (CVS 1514) file: [17b99f8d] check-in: [af8e2006] user: danielk1977 branch: trunk, size: 40153
18:51
Change all SQLITE3 preprocessor macros to SQLITE. Documentation updates. (CVS 1511) file: [a4229702] check-in: [adf7e29f] user: drh branch: trunk, size: 40217
10:08
Bugfix for previous checkin. (CVS 1503) file: [a6af136b] check-in: [5f869fbf] user: danielk1977 branch: trunk, size: 40222
10:01
Add read-transactions to the btree and vdbe. The compiler doesn't invoke them yet. (CVS 1502) file: [32ff5754] check-in: [6b43633a] user: danielk1977 branch: trunk, size: 40197
08:26
Replace OP_Begin, OP_Commit and OP_Rollback with OP_AutoCommit. (CVS 1500) file: [9cad713e] check-in: [b8ed812c] user: danielk1977 branch: trunk, size: 40203
2004-05-30
21:14
Add 3-byte and 6-byte integer serial types. This makes databases smaller and faster. Should we go ahead and add 5- and 7-byte integer types too? (CVS 1499) file: [c7e66db2] check-in: [e6685af8] user: drh branch: trunk, size: 39229
20:46
Various speed enhancements. (CVS 1498) file: [ec0cccd9] check-in: [a0db15bb] user: drh branch: trunk, size: 39138
02:14
Additional minor speed improvements. (CVS 1496) file: [9a86cafa] check-in: [a90264c0] user: drh branch: trunk, size: 38752
01:51
Faster version of sqlite3VdbeSerialGet. (CVS 1495) file: [419f6248] check-in: [80985505] user: drh branch: trunk, size: 38853
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: [79dbad52] check-in: [3225de89] user: danielk1977 branch: trunk, size: 39430
2004-05-28
16:00
Factor common code for generating index keys into a procedure. Other speed improvements and bug fixes. (CVS 1487) file: [bbcf1bb9] check-in: [6661bb5f] user: drh branch: trunk, size: 40594
13:13
Fix a bug in the sqlite3_column_decltype() API. (CVS 1486) file: [b1e176b1] check-in: [c8a40218] user: danielk1977 branch: trunk, size: 40470
11:37
Allow CREATE TABLE and CREATE INDEX on attached databases. (CVS 1483) file: [7a0dd0fb] check-in: [4984a130] user: danielk1977 branch: trunk, size: 40460
08:21
Tables and indices use the same record format. (CVS 1482) file: [75428f01] check-in: [1b15b32b] user: drh branch: trunk, size: 39938
01:39
Remove the encoding argument from sqlite3VdbeSerialGet. Use the 32-bit version of sqlite3GetVarint for schema-level parameters. (CVS 1480) file: [97f24082] check-in: [321f8c46] user: drh branch: trunk, size: 41978
2004-05-27
23:56
Add API functions sqlite3_open_varargs(), sqlite3_open16_varargs() and sqlite3_complete16(). (CVS 1479) file: [408a8949] check-in: [203af2b2] user: danielk1977 branch: trunk, size: 42106
19:59
Change the record format to include an extra varint at the beginning to record the number of bytes in the header. (CVS 1478) file: [c1beed30] check-in: [0c4d1388] user: drh branch: trunk, size: 42098
13:35
A couple of test cases and fixes for blob literals. (CVS 1474) file: [5b886ac7] check-in: [6d552af6] user: danielk1977 branch: trunk, size: 41655
09:28
Various bugfixes. 68 Test cases still fail. (CVS 1471) file: [f36130df] check-in: [67a140cf] user: danielk1977 branch: trunk, size: 41576
03:12
Fixes to the MEM changes. The library now links. (CVS 1470) file: [02ad53b5] check-in: [f33d15d9] user: drh branch: trunk, size: 40996
01:53
More MEM changes in the vdbe.c. Still will not compile. (CVS 1469) file: [de2d82e4] check-in: [dbdd1a7f] user: drh branch: trunk, size: 40960
2004-05-26
23:25
Refactoring of the vdbe Mem functions and the APIs that deal with them. The code will not compile in its current state. (CVS 1465) file: [677317be] check-in: [bba6684d] user: drh branch: trunk, size: 51390
16:54
Remove dataType and includeTypes flags from function definitions. Added new P3_FUNCDEF type for P3 arguments on opcodes. Fixes to several user functions. 28 tests fail now. (CVS 1464) file: [951985ea] check-in: [36e03162] user: drh branch: trunk, size: 51384
10:11
Add some tests for the new API. Many more to come. (CVS 1462) file: [be599d27] check-in: [d5659f2e] user: danielk1977 branch: trunk, size: 50978
02:04
Use the new API calls more consistently. (CVS 1459) file: [a792ac60] check-in: [17e7db48] user: danielk1977 branch: trunk, size: 49932
2004-05-25
23:35
Move the sqlite3_exec() function to legacy.c. (CVS 1455) file: [b2527b7c] check-in: [9385ad5c] user: danielk1977 branch: trunk, size: 50363
12:05
Change a couple of symbol names for the new user function API. (CVS 1454) file: [051acd76] check-in: [8f6b20c2] user: danielk1977 branch: trunk, size: 50011
11:47
Use the new API for returning values and errors from user functions. (CVS 1453) file: [dc4fdfce] check-in: [4eccae03] user: danielk1977 branch: trunk, size: 49993
01:13
Add manifest type aware versions of the min() and max() aggregates. (CVS 1452) file: [588e7df7] check-in: [b77c268e] user: danielk1977 branch: trunk, size: 46980
2004-05-24
23:48
Aggregate functions also use sqlite_value* instead of const char * for arguments. (CVS 1451) file: [a01d066f] check-in: [5c28ed5e] user: danielk1977 branch: trunk, size: 46330
07:04
Have the vdbe handle strings in the same encoding as the database. (CVS 1445) file: [7f0c4ad2] check-in: [b7155db2] user: danielk1977 branch: trunk, size: 46328
2004-05-23
13:30
Begin changing the vdbe so all stack values use the database encoding. (CVS 1444) file: [60fa2357] check-in: [f47de3a9] user: danielk1977 branch: trunk, size: 52155
2004-05-22
21:30
Remove the OP_SetInsert opcode. (CVS 1443) file: [1e526269] check-in: [18e690e4] user: drh branch: trunk, size: 50389
07:27
A few bugfixes related to UTF-16 databases. sqlite3_open() still assumes a UTF-8 database, and sqlite3_open16() still assumes a UTF-16 db. (CVS 1434) file: [d3dfb6d4] check-in: [b3581d27] user: danielk1977 branch: trunk, size: 50541
03:05
Steps towards UTF-16 databases. Some tests are failing because of this commit. (CVS 1433) file: [8e993bfd] check-in: [c4a82468] user: danielk1977 branch: trunk, size: 49789
2004-05-21
21:12
Floating point values are serialized in big-endian byte order. (CVS 1431) file: [2dd43706] check-in: [acb65297] user: drh branch: trunk, size: 49396
10:49
Pretty-print blobs in vdbe-traces. (CVS 1428) file: [0a0de6f6] check-in: [5eb94c97] user: danielk1977 branch: trunk, size: 49633
10:08
Further work on the new API. All the functions to execute queries are there now. (CVS 1427) file: [bceaa0b9] check-in: [fc94575d] user: danielk1977 branch: trunk, size: 49470
01:29
Sorting bug fixes. Now only 17 tests fail. (CVS 1422) file: [51f7d0cc] check-in: [0736b7e8] user: drh branch: trunk, size: 49061
2004-05-20
22:16
Add internal support for collating sequences. This breaks 244 tests. (CVS 1420) file: [4446afcd] check-in: [a6cb09d7] user: drh branch: trunk, size: 48845
13:54
sqlite3MemCompare now takes a CollSeq* argument. (CVS 1419) file: [b7708021] check-in: [5c1e47a2] user: drh branch: trunk, size: 46047
11:00
Add some more elements of the new API. (CVS 1416) file: [c48157e9] check-in: [2821767b] user: danielk1977 branch: trunk, size: 45388
01:40
Add some comments for sqlite3_bind_*() APIs. (CVS 1411) file: [0039a786] check-in: [46b09422] user: danielk1977 branch: trunk, size: 44841
01:12
Add support for the new sqlite3_bind_*() APIs. (CVS 1410) file: [4cd7291c] check-in: [e8f980d8] user: danielk1977 branch: trunk, size: 44418
2004-05-19
20:41
Correctly handle 64-bit integers in SQL statements. (CVS 1408) file: [c241a6ba] check-in: [34f03ba6] user: drh branch: trunk, size: 43934
14:56
Change opcode names and comments to better describe the operation of the incrKey flag. OP_MoveTo becomes OP_MoveGe. (CVS 1407) file: [453e9f6d] check-in: [8f249c45] user: drh branch: trunk, size: 43966
11:24
Variable name change: azVar to apVar. (CVS 1404) file: [5743e159] check-in: [45169ce0] user: drh branch: trunk, size: 43577
10:36
Tests for text encoding conversion functions. Also new sqlite3_bindXX APIs. (CVS 1403) file: [1e1aed6b] check-in: [f71844bc] user: danielk1977 branch: trunk, size: 43583
2004-05-18
23:21
Add definitions of the CollSeq and KeyInfo structures. (CVS 1399) file: [95f5a9ff] check-in: [cd1be815] user: drh branch: trunk, size: 41017
22:38
Remove dead code from vdbeaux.c. Add comments describing desired changes to OP_Sort processing in select.c (CVS 1398) file: [1d447c91] check-in: [ae37e8a0] user: drh branch: trunk, size: 42160
09:58
Fix many problems with manifest types and column affinity. Most things are working now. (CVS 1392) file: [760105ce] check-in: [a62872aa] user: danielk1977 branch: trunk, size: 42980
01:31
Bugfix for row format. (CVS 1391) file: [61886139] check-in: [c1745f47] user: danielk1977 branch: trunk, size: 41669
2004-05-17
10:48
More changes to support the new types model. Compound SELECTs are currently broken. (CVS 1389) file: [394bde6b] check-in: [0f6c9b05] user: danielk1977 branch: trunk, size: 40627
2004-05-16
11:15
More changes to support the manifest type model. A few things are currently broken. (CVS 1385) file: [bd259da3] check-in: [a4af838f] user: danielk1977 branch: trunk, size: 40643
2004-05-14
21:59
Allocates VDBE cursors one by one in separate memory so that pointers to cursors can persist through a realloc(). (CVS 1383) file: [8411f411] check-in: [d8bacc16] user: drh branch: trunk, size: 40639
21:12
Cache record headers in the OP_Column opcode. (CVS 1382) file: [38f924db] check-in: [8d9eab17] user: drh branch: trunk, size: 40598
19:08
More speed improvements. (CVS 1381) file: [6cf897c4] check-in: [cf75cac9] user: drh branch: trunk, size: 40549
15:27
Performance improvements (CVS 1379) file: [4590e8f5] check-in: [cad47917] user: drh branch: trunk, size: 40546
11:00
Implement type affinity for table and index records (CVS 1375) file: [d8dc16e7] check-in: [dbfe6e93] user: danielk1977 branch: trunk, size: 40546
2004-05-13
05:20
Commit vdbeaux.c, which should of gone in with the previous commit. (CVS 1369) file: [8bf71f7b] check-in: [5378a640] user: danielk1977 branch: trunk, size: 40015
2004-05-12
11:24
Add some more code to support manifest typing in indices. Not activated yet. (CVS 1362) file: [c976c7fe] check-in: [2f16c9ef] user: danielk1977 branch: trunk, size: 37319
07:33
Change the table record format to support manifest typing. (CVS 1361) file: [6e36f008] check-in: [0242c9e4] user: danielk1977 branch: trunk, size: 36981
2004-05-11
09:31
Fix an offset problem in the meta values that was causing problems for many tests. (CVS 1357) file: [cf242814] check-in: [6d378cb7] user: drh branch: trunk, size: 36730
06:17
Minor changes to the vdbe so that more tests pass. (CVS 1352) file: [feee0e94] check-in: [16078fe0] user: danielk1977 branch: trunk, size: 36705
00:58
Updates to sqlite3BtreeKeyFetch() and sqlite3BtreeDataFetch(). (CVS 1347) file: [7162f139] check-in: [a675ac49] user: drh branch: trunk, size: 36604
2004-05-10
10:37
Change the names of external symbols from sqlite_XXX to sqlite3_XXX. (CVS 1339) file: [943484a2] check-in: [19b100ec] user: danielk1977 branch: trunk, size: 36544
10:05
Add some functions to serialize and deserialize vdbe values (used by manifest typing). (CVS 1336) file: [0256d8b9] check-in: [05434497] user: danielk1977 branch: trunk, size: 36518
07:17
Add versions of OP_MakeRecord and OP_Column that use manifest typing (not activated yet). (CVS 1334) file: [4dac7718] check-in: [8a66a502] user: danielk1977 branch: trunk, size: 32583
2004-05-09
23:23
Add a temporary sqlite2BtreeKeyCompare() function to help get regression tests passing again. (CVS 1332) file: [2789bdd1] check-in: [d8d1c91e] user: danielk1977 branch: trunk, size: 31839
2004-05-08
10:56
Get the code back to the point where it will compile the btree.c tests. Move the default key comparison routine from btree.c into vdbeaux.c. Commented out code in vdbe.c that will need to be fixed. (CVS 1326) file: [81d95af2] check-in: [2bca9224] user: drh branch: trunk, size: 30768
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: [68c24aa7] check-in: [8af6474c] user: danielk1977 branch: trunk, size: 27657
2004-02-22
20:05
Use sqliteVdbeOp3 instead of sqliteVdbeChangeP3 where applicable. (CVS 1266) file: [e2cdd1ab] check-in: [51f1e8f7] user: drh branch: trunk, size: 27583
2004-02-21
19:02
Cleanup the printf code to make it smaller and more modular. Fix a memory leak in the new OP_ContextPush opcode. (CVS 1258) file: [88ebe3aa] check-in: [2756f7af] user: drh branch: trunk, size: 26973
13:31
More code cleanup and size reduction. (CVS 1256) file: [2268af64] check-in: [8e3eda2a] user: drh branch: trunk, size: 26919
2004-02-18
16:57
Fix a memory leak that occurs if you call sqlite_interrupt() on a query using aggregate functions where the aggregate function returns a string longer than 32 characters. (CVS 1248) file: [9f8c7eee] check-in: [2c1e74e5] user: drh branch: trunk, size: 26803
2004-02-14
23:59
Eliminate obsolete code associated with the older callback functionality. (CVS 1243) file: [11f1fa94] check-in: [2dbc4593] user: drh branch: trunk, size: 26725
16:31
The sqlite_exec() function is now implemented using sqlite_compile() and sqlite_step(). This opens up lots of opportunity to remove old code. (CVS 1240) file: [e7dabd70] check-in: [9771ad1e] user: drh branch: trunk, size: 27623
2004-02-12
15:31
Always reload the schema after a rollback. Ticket #594. (CVS 1229) file: [7c83db88] check-in: [12c7a83f] user: drh branch: trunk, size: 27485
2004-01-31
19:22
Rework internal data structures to make the VDBE about 15% smaller. (CVS 1203) file: [c55d87d6] check-in: [8273c74b] user: drh branch: trunk, size: 27464
2004-01-30
14:49
Rework the VDBE data structures to combine string representations into the same structure with integer and floating point. This opens the door to significant optimizations. (CVS 1202) file: [358d955a] check-in: [c0faa1c6] user: drh branch: trunk, size: 27616
2004-01-16
16:42
More compaction of expr.c. (CVS 1184) file: [dae9f8de] check-in: [92e7f780] user: drh branch: trunk, size: 27667
2004-01-07
18:52
Defer the {quote: MoveTo} opcode in VDBE until the data is actually needed. Sometimes the data is never needed, resulting in a performance increase. On an indexed order search with a large OFFSET, queries times can be an order of magnitude faster. (CVS 1165) file: [6f2d4364] check-in: [d3e96da2] user: drh branch: trunk, size: 27609
2003-12-31
17:57
Fix a bug in the SQLITE_PROFILE conditional compilation. (CVS 1152) file: [8f0df877] check-in: [597b33f6] user: drh branch: trunk, size: 26170
2003-12-06
21:43
Always use "(char*)0" to terminate the argument list of sqliteSetString(). This is needed for 64-bit systems that use a 32-bit integer by default. (CVS 1126) file: [877ae44a] check-in: [656c9038] user: drh branch: trunk, size: 26143
2003-10-10
02:09
Update to the date functions. (CVS 1110) file: [31abb8e3] check-in: [06d4e883] user: drh branch: trunk, size: 26122
2003-09-06
22:45
Add initial test cases for the new sqlite_bind() API. Fix bugs that the new test cases found. (CVS 1096) file: [1145fa16] check-in: [f6c4908e] user: drh branch: trunk, size: 26290
22:18
Update Makefile.in for the new vdbeaux.c file. Remove the experimental "sqlite_instantiate()" routine and replace it with "sqlite_bind()" which is more like ODBC and JDBC. (CVS 1095) file: [402daaa4] check-in: [990bb118] user: drh branch: trunk, size: 26260
20:12
Split almost 1300 lines of code out of vdbe.c into separate files vdbeInt.h and vdbeaux.c. (CVS 1094) file: [ebf5eab1] check-in: [bfd69391] user: drh branch: trunk, size: 26241 Added