SQLite

Timeline
Login

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

200 most recent check-ins using file src/hwtime.h version d32741c8

2019-09-03
19:29
Fix a buffer overread that could occur when running fts5 prefix queries inside a transaction. (Leaf check-in: b584fd36 user: dan tags: branch-3.9)
17:39
Disable the undocumented rtreenode() SQL function that is only used for testing, except when doing a build that is specifically intended for testing. (check-in: 7b4583f9 user: drh tags: branch-3.9)
2018-12-19
16:03
Add interfaces sqlite3_bind_pointer(), sqlite3_result_pointer(), and sqlite3_value_pointer() used to safely move pointer values through SQL without exposing underlying memory address information. Cherrypick from commit [8201f4e1] on branch-3.18. (check-in: 4cb67252 user: dan tags: branch-3.9)
01:57
Add extra defenses against strategically corrupt databases to fts3/4. (check-in: 882ef4e3 user: drh tags: branch-3.9)
2018-12-14
20:28
Add a missing OP_ColumnsUsed opcode to code for expressions like "? IN (SELECT ...)" in cases where expression can use an index that may contain NULL values. (Backported fix from version 3.14.0). (Leaf check-in: 11368e67 user: drh tags: branch-3.8.9)
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) (check-in: b29e02f8 user: drh tags: branch-3.8.9)
2018-02-02
16:46
Enable the ".wheretrace" and ".selecttrace" options in the shell when configure is run using --enable-debug. This mirrors a similar change that has already occurred on trunk. (Leaf check-in: c4f798b2 user: drh tags: branch-3.9.2)
2017-11-14
18:26
Fix the SQLITE_ENABLE_UPDATE_DELETE_LIMIT functionality so that it works with views and WITHOUT ROWID tables. This is a modified cherrypick of [dae4a97a]. (check-in: b2679d3b user: dan tags: branch-3.8.9)
2017-11-09
04:13
Disallow ORDER BY and LIMIT on UPDATE and DELETE of views and WITHOUT ROWID tables. This is a temporary fix for ticket [d4beea1633f1b88f] until a better solution can be found. (check-in: 30aa941f user: drh tags: branch-3.8.9)
2017-07-27
22:16
Enhance the like optimization so that it works with an ESCAPE clause. (check-in: 2495acf7 user: drh tags: branch-3.8.9)
2017-07-21
07:45
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This changes is a cherry-pick of [f0f49224] with version-specific edits. That check-in was inspired by check-in [72de49f2]. (check-in: 69906880 user: drh tags: branch-3.9.2)
04:08
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This is a cherry-pick of [f0f49224] which was in turn inspired by [72de49f2]. (Leaf check-in: 5a3022e0 user: drh tags: branch-3.8.10)
03:23
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This is a cherry-pick of [f0f492245e95], which is in turn inspired by check-in [72de49f2]. (Leaf check-in: a66a5b39 user: drh tags: branch-3.8.6)
03:09
Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This changes is inspired by check-in [72de49f2] but is new implementation, not a cherry-pick. (Leaf check-in: f0f49224 user: drh tags: branch-3.7.11)
2017-07-17
19:37
Try to push relevant WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. This is a cherry-pick of [6df18e949d36] with bug fixes. (check-in: cd6ac078 user: drh tags: branch-3.8.9)
19:25
When checking for the WHERE-clause push-down optimization, verify that all terms of the compound inner SELECT are non-aggregate, not just the last term. Fix for ticket [f7f8c97e97597]. (Closed-Leaf check-in: adc082c1 user: drh tags: push-down-backport)
19:14
Do not apply the WHERE-clause pushdown optimization to terms that originate in the ON or USING clause of a LEFT JOIN. Fix for ticket [c2a19d81652f40568c]. (check-in: 52674f94 user: drh tags: push-down-backport)
19:07
For FROM-clause subqueries that cannot be flattened, try to push relevant WHERE clause terms of the outer query down into the subquery in order to help the subquery run faster and/or use less memory. Cherry-pick from [6df18e949d36]. Still need to backport bug fixes associated with that check-in. (check-in: 043d6ce8 user: drh tags: push-down-backport)
2017-07-08
01:01
Fix the covering index OR optimization (check-in [fcbd6abd]) so that it works with SQLITE_MAX_ATTACHED>30. Broken by a bad cherry-pick merge. (check-in: d227de8a user: drh tags: branch-3.8.9)
2017-07-05
16:20
Make use of covering indexes in the OR optimization. (check-in: fcbd6abd user: drh tags: branch-3.8.9)
14:54
Add the count-of-view optimization when compiled using SQLITE_COUNTOFVIEW_OPTIMIZATION. (check-in: b7ae4b87 user: drh tags: branch-3.8.9)
2017-06-06
18:22
Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated number of rows in tables that lack sqlite_stat1 entries. (check-in: 802b82f3 user: drh tags: branch-3.8.9)
2017-06-01
16:13
Add test code for LSM to the ext/lsm1/lsm-test directory. (check-in: bb7436e8 user: dan tags: lsm-vtab)
2017-05-24
04:32
Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. (check-in: 19dad0a7 user: drh tags: branch-3.8.9)
2017-05-22
00:27
When planning a query using sorting, resolve ties in the solver by selecting loop plans with the smaller unsorted cost. (check-in: 962531e7 user: drh tags: branch-3.8.9)
2017-03-31
08:00
Update shell6.test to account for the fact that tests are now run in a separate directory. (check-in: 1e3622de user: dan tags: schemalint)
2017-01-11
14:21
In the STAT4 computations, ensure that the aAvgEq values do not go negative. (check-in: 4f83f680 user: drh tags: branch-3.8.9)
2016-11-02
16:29
When the block sorting optimization is used in a scalar subquery, be sure to exit the loop as soon as the first valid output row is received. Fix for ticket [cb3aa0641d9a4] backported to the 3.8.9 branch. (check-in: 8e4ba115 user: drh tags: branch-3.8.9)
2016-10-17
23:44
Fix SQLITE_DBCONFIG_REQUIRE_TXN so that it allows BEGIN IMMEDAITE and BEGIN EXCLUSIVE to run outside of a transaction. (Leaf check-in: 29997f79 user: drh tags: require-write-txn)
2016-09-23
18:06
Fix the ORDER BY LIMIT optimization backport so that it works when the ORDER BY uses the DESC direction. (check-in: 0c3cafb7 user: drh tags: branch-3.8.9)
2016-09-14
01:43
Backport the ORDER BY LIMIT optimization to version 3.8.9. (check-in: db361482 user: drh tags: branch-3.8.9)
2016-08-10
03:35
Try to make pcache1TruncateUnsafe() run faster for the case where iLimit is very close to iMaxKey. (Leaf check-in: 9ab53605 user: drh tags: debug)
02:54
Remove all timers and other debugging logs except for the one timer on pcache1TruncateUnsafe(). (check-in: 5980e625 user: drh tags: debug)
2016-08-09
11:44
Add another timer on pcache1TruncateUnsafe(). (check-in: 42ce53f6 user: drh tags: debug)
11:23
Add a debug timer to pcache1Truncate(). Change the formatting of some other messages to make them easier to read. (check-in: 7d0af4b5 user: dan tags: debug)
01:21
Refocus the timer on the pager_end_transaction() routine. (check-in: 9d4eb6e4 user: drh tags: debug)
2016-08-04
14:08
Add extra logging calls to this branch. (check-in: 491f1ef3 user: dan tags: debug)
2016-07-30
03:33
A new version of the slow mutex log that uses gettimeofday() instead of trying to access the hardware timer. (check-in: 92b9fead user: drh tags: debug)
2016-07-29
16:32
Turn memory status off by default. (check-in: ea3c7162 user: drh tags: debug)
14:31
Enhance a debugging log message to better identify a mutex. (check-in: e60cb6d8 user: dan tags: debug)
14:23
Use __sync_synchronous(), when available, instead of a mutex when a memory barrier is needed. (check-in: 7d4562e9 user: drh tags: debug)
14:10
Add calls to sqlite3_log() when sqlite3_mutex_enter() takes more than 100,000 CPU cycles. (check-in: 33c7ef7a user: drh tags: debug)
2016-07-16
11:47
Temporarily add extra sqlite3_log() calls to this version to help with debugging a performance problem. (check-in: 613c1cea user: dan tags: debug)
2016-07-14
20:19
Experimental patch restore the slight bias in btree-balancing immediately after the change to reduces the amount of memcpy() work done by balancing. (Leaf check-in: 46bd9533 user: drh tags: btree-balance-bias)
2016-07-09
00:06
Add support for the win32-none VFS. (check-in: b5f32a89 user: drh tags: trunk)
2016-07-08
21:14
Initial work on a Win32 VFS with NOP locking. (Closed-Leaf check-in: 549abe3f user: mistachkin tags: win32nolock)
19:54
Another attempt to fix error handling in Lemon. This change is a no-op for SQLite's usage. (check-in: e1d8ef31 user: drh tags: trunk)
02:14
In the sqldiff program, make sure the first argument to the db_prepare() utility function is always a valid format string. (check-in: 8bb8d886 user: drh tags: trunk)
2016-07-06
18:42
Add the SQLITE_DBSTATUS_CACHE_USED_SHARED sqlite3_db_status() parameter. This option is similar to DBSTATUS_CACHE_USED, except that it divides memory used by shared caches evenly between all connections. (check-in: 06cf2680 user: dan tags: trunk)
18:12
Change the name of the SQLITE_DBSTATUS_PROPORTIONAL_CACHE_USED to SQLITE_DBSTATUS_CACHE_USED_SHARED. (Closed-Leaf check-in: d58401ab user: dan tags: dbstatus-prop-cache-used)
10:17
Fix a test script problem causing a test to fail if the ICU extension is enabled. (check-in: 0c228f5d user: dan tags: trunk)
10:12
Add the SQLITE_DBSTATUS_PROPORTIONAL_CACHE_USED sqlite3_db_status() parameter. (check-in: 118321c8 user: dan tags: dbstatus-prop-cache-used)
09:19
Fix a memory leak in recently added test code. (check-in: 724e4cdc user: dan tags: trunk)
08:32
Fix a typo in test program bc_test1.c. (check-in: 2c61b7ab user: dan tags: begin-concurrent)
2016-07-05
16:11
More fixes to Lemon so that it automatically resets its error counter at the end of a parse. (check-in: 2683b375 user: drh tags: trunk)
12:47
Attempt to reset the error count in the Lemon-generated parser after a parse failure. (check-in: 91889fa3 user: drh tags: trunk)
2016-07-04
11:47
Add the sqlite3rbu_state() API. Used to determine the current state (creating OAL, ready to move OAL, incremental-checkpoint, finished or error) of an RBU operation. (check-in: 0357875f user: dan tags: trunk)
11:34
Add the carray() virtual table as a loadable extension. (check-in: d8bc6feb user: drh tags: trunk)
2016-07-03
02:35
Change the name of the intarray() extension to carray() and give it an optional third parameter that specifies the datatype as one of 'int32', 'int64', 'double', or 'char*'. 'int32' is the default. (Closed-Leaf check-in: a204ba99 user: drh tags: prototype-int-array)
2016-07-02
20:57
Fix an off-by-one comparison in the intarray() virtual table. Get the intarray() virtual table tests working using the legacy makefile. (check-in: 7c3d441f user: drh tags: prototype-int-array)
20:51
Merge the alternative table-valued function RHS of IN operator implementation from trunk. (check-in: 507fdbfb user: drh tags: prototype-int-array)
12:33
Fix a problem in table-valued functions on the RHS of an IN operator that occurs following an OOM error. (check-in: bead151e user: drh tags: trunk)
12:08
Add support for table-valued functions on the RHS of an IN operator. (check-in: ac6000f0 user: drh tags: trunk)
2016-07-01
20:12
Fix the transitive constraint logic error that can result in a null pointer dereference. Fix for ticket [e8d439c77685eca6]. (check-in: 228a7879 user: drh tags: trunk)
19:48
Add test cases to the transitive constraint fix. (Closed-Leaf check-in: c952af89 user: drh tags: planner-fix)
12:39
Add the sqlite3rbu_state() API. Used to determine the current state (creating OAL, ready to move OAL, incremental-checkpoint, finished or error) of an RBU operation. (Closed-Leaf check-in: 92e7df0f user: dan tags: rbu-state-api)
2016-06-29
06:19
Add the ability to have a table-valued function on the RHS of an IN operator. (check-in: ba1b441b user: drh tags: prototype-int-array)
05:08
Another test case for the intarray($PTR,$N) virtual table. (check-in: 06e1fab7 user: drh tags: prototype-int-array)
05:00
Add a prototype intarray($PTR,$N) table valued function. (check-in: 233b3338 user: drh tags: prototype-int-array)
2016-06-28
22:27
Proposed fix for a problem in the query planner. (check-in: a33d2356 user: drh tags: planner-fix)
2016-06-26
04:06
Prevent the WhereLoop.rSetup cost estimate from going negative on complex queries. (check-in: f8105085 user: drh tags: trunk)
2016-06-25
11:43
Fix the handling of OP_Eq opcodes that compare a register against itself and that require an affinity change. (check-in: 507014e4 user: drh tags: trunk)
2016-06-24
06:23
Fix the ctime.test script so that it works with clang. (check-in: 77e4f7a3 user: drh tags: trunk)
02:50
Fix the Makefile.in to avoid unnecessary recompiles of sqlite3.c. (check-in: 67c39e16 user: drh tags: trunk)
02:21
Provide for a separate default page size for TEMP and transient database files and initialize that separate default page size to 1024 instead of 4096. (Leaf check-in: a2778ae4 user: drh tags: temp-page-size)
2016-06-23
16:48
Update the sqldiff utility so that if the --vtab switch is specified "rtree", "fts3", "fts4" and "fts5" tables are diff'd directly and the underlying real database tables ignored. Without this switch, all virtual tables are ignored and the diff is performed on the underlying real tables. (check-in: b8671e94 user: dan tags: trunk)
12:35
Fix the build for -DSQLITE_OMIT_VIRTUALTABLE (check-in: 91113142 user: drh tags: trunk)
2016-06-21
10:34
Update the sqldiff utility so that if the --vtab switch is specified "rtree", "fts3", "fts4" and "fts5" tables are diff'd directly and the underlying real database tables ignored. Without this switch, all virtual tables are ignored and the diff is performed on the underlying real tables. (Closed-Leaf check-in: 5d0a9d4c user: dan tags: sqldiff-vtab-support)
2016-06-20
17:25
For a table on the rhs of a LEFT JOIN operator, do not include terms like "IS NULL" from the WHERE clause in the cursor-hint. These may be false for rows that the cursor would otherwise visit, but true for a row of all NULL values generated by the LEFT JOIN. (check-in: 913e5956 user: dan tags: trunk)
17:22
Allow LIKE operators that appear in a WHERE clause to be included in the cursor-hint for a cursor on the rhs of a LEFT JOIN. (Closed-Leaf check-in: 7455d932 user: dan tags: cursor-hints)
2016-06-17
19:27
Include WHERE terms in the cursor-hint passed to a cursor opened for the rhs of a LEFT JOIN iff we can be sure that those terms will not evaluate to true if the LEFT JOIN generates a row of NULLs. (check-in: 998095ab user: dan tags: cursor-hints)
14:59
Fix a duplicate test name in cursorhint2.test. (check-in: fcd12b69 user: dan tags: cursor-hints)
14:47
Fix a typo in the cursorhint2.test script. (check-in: c1a5a57c user: dan tags: cursor-hints)
14:33
If a table is on the rhs of a LEFT JOIN, include only terms from the joins ON(...) clause in the cursor-hint passed via OP_CursorHint. (check-in: 2a2346b0 user: dan tags: cursor-hints)
13:01
Add the json_quote() function to the JSON1 extension. (Closed-Leaf check-in: 2c3714ae user: drh tags: json_quote)
2016-06-16
17:14
Add a missing OP_ColumnsUsed opcode to code for expressions like "? IN (SELECT ...)" in cases where expression can use an index that may contain NULL values. (check-in: 0b1579ca user: dan tags: trunk)
11:16
Fix a typo in a comment on the SrcList object. (check-in: 48b555c4 user: drh tags: trunk)
2016-06-15
10:21
Merge changes from trunk. (check-in: 0f707d15 user: drh tags: apple-osx)
2016-06-13
19:58
Fix RBU so that it builds with -DSQLITE_ENABLE_8_3_NAMES. Fix "PRAGMA compile_options" for SQLITE_ENABLE_8_3_NAMES such that it reports the numeric setting: "1" or "2". (check-in: 0230ca17 user: drh tags: trunk)
15:59
Fix the declaration of the table implemented by DBSTAT so that it uses correct datatypes. (check-in: a1e1cdc5 user: drh tags: trunk)
12:51
Fix an incorrect assert() in the btree logic. (check-in: fcf6114b user: drh tags: trunk)
12:34
Fix the "onecolumn" and "exists" methods of the TCL interface so that they work in combination with the "profile" callback. (check-in: d362ba15 user: drh tags: trunk)
2016-06-10
22:49
Enhance "PRAGMA table_info" to that it provides information about eponymous virtual tables. (check-in: 53a1e5d5 user: drh tags: trunk)
2016-06-08
18:07
Prefer to use partial indexes for full table scans when that is possible. (check-in: fe187432 user: drh tags: trunk)
14:04
Add the "dbhash.exe" utility program that computes a SHA1 hash over the invariant content of an SQLite database file. Free space in the file, the page size, auto_vacuum status, text encoding, and so forth do not change the hash. Only the content matters. (check-in: f48a4ad3 user: drh tags: trunk)
13:59
Fix an undersized buffer in the SHA1 implementation. (Closed-Leaf check-in: fb276815 user: drh tags: dbhash)
13:49
Fix the dbhash utility so that it ignores the root page number when hashing the sqlite_master table. Add new command-line options. Add the ability to hash multiple databases with a single command. (check-in: 44f157e0 user: drh tags: dbhash)
01:03
An initial attempt at a "dbhash" command-line utility. (check-in: 2247649c user: drh tags: dbhash)
2016-06-07
20:25
Fix the walcrash4.test test module so that it works on windows. (check-in: 2091a4c9 user: drh tags: trunk)
2016-06-06
20:36
In winFullPathname, translate '/X:' to 'X:' before doing anything else. (check-in: e404ad70 user: mistachkin tags: trunk)
20:27
Translate filenames of the form "/c:/*" into just "c:/*" on WinRT and Cygwin. (SQLite has long done this for Win32/WinNT.) (check-in: f8470ffc user: drh tags: trunk)
18:17
Fix lempar.c so that the shift-reduce optimization works for error processing. This is a Lemon issue only and has no impact on SQLite. (check-in: 3665a2f5 user: drh tags: trunk)
13:24
Initialize the yyerrcnt variable in the lemon parser template. This has no effect on SQLite itself. (check-in: 45531654 user: drh tags: trunk)
01:54
Small performance boost and size decrease in sqlite3BtreeMovetoUnpacked(). (check-in: e106a77d user: drh tags: trunk)
01:48
Small performance improvement in the LIKE function. (check-in: 5fb0c354 user: drh tags: trunk)
01:14
Btree interface refactoring: (1) The sqlite3BtreeKeySize() interface is renamed to sqlite3BtreeIntegerKey() and modified to work only for table btrees with a rowid. (2) The sqlite3BtreeDataSize() interface is renamed to sqlite3BtreePayloadSize() and modified to work with any btree. (3) The sqlite3BtreeDataFetch() and sqlite3BtreeKeyFetch() routines are combined into a single sqlite3BtreePayloadFetch() routine. The result of these changes is a smaller binary and fewer CPU cycles needed to run queries. (check-in: 2d831074 user: drh tags: trunk)
2016-06-04
21:05
Improved comment on cursorOwnsBtShared(). No changes to code. (Closed-Leaf check-in: 5e269c2d user: drh tags: btree-refactor)
20:58
Fix a C99-ism and a compiler warning for MSVC. (check-in: aa53a36e user: drh tags: btree-refactor)
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. (check-in: bef35e18 user: drh tags: btree-refactor)
17:12
Allocate KeyInfo objects from lookaside if possible. (check-in: b411107a user: drh tags: trunk)
16:33
Fix up speedtest1.c so that it will compile and run on SQLite versions prior to 3.6.18 (circa 2009-09-11). (check-in: 9583c0fb user: drh tags: trunk)
13:57
Remove an unreachable branch in the UNIQUE constraint parsing. (check-in: 313e990c user: drh tags: trunk)
2016-06-03
18:59
The OR optimization is usable on virtual tables with LIKE, REGEXP and/or GLOB terms in the WHERE clause. (check-in: fa3a89fc user: drh tags: trunk)
18:44
Add support for virtual tables using a WITHOUT ROWID schema. This merge also includes enhancements to the CSV extension, which is used for testing of the new WITHOUT ROWID virtual table mechanism. (check-in: aa7e9d0c user: drh tags: trunk)
18:21
Fix a memory leak when a WITHOUT ROWID eponymous virtual table is used. (Closed-Leaf check-in: 31b83a7d user: drh tags: without-rowid-vtab)
17:27
Disallow access to the rowid column on WITHOUT ROWID virtual tables. (check-in: d31c2597 user: drh tags: without-rowid-vtab)
13:35
Enhance the sqlite3_load_extension() interface to permit extensions to return SQLITE_OK_LOAD_PERMANENTLY which will prevents unloading when the database connection closes. (check-in: 5908aa4d user: drh tags: trunk)
01:01
Performance optimizations on the CSV virtual table. Disallow WITHOUT ROWID virtual tables that have an xUpdate method, for now. (check-in: 3134b326 user: drh tags: without-rowid-vtab)
2016-06-02
23:13
Add the CSV extension to the test fixture. Fix a memory leak in the CSV extension. Add test cases for the CSV extension, including one that uses a WITHOUT ROWID virtual table participating in the OR optimization. (check-in: 95f483e8 user: drh tags: without-rowid-vtab)
17:44
Add the data= parameter to the CSV virtual table extension. (check-in: 76919104 user: drh tags: without-rowid-vtab)
16:22
Fix corner cases in the WITHOUT ROWID virtual table logic. (check-in: a393bbb9 user: drh tags: without-rowid-vtab)
2016-06-01
10:37
Fix an issue preventing RBU vacuum from working with virtual tables. (check-in: 3bd85fa5 user: dan tags: trunk)
05:02
Fix compilation issues with the VFS stat extension. (check-in: f6e95652 user: mistachkin tags: trunk)
2016-05-31
21:18
An experimental branch with code that allows virtual tables to be declared as WITHOUT ROWID tables. This might be useful for virtual tables that model external data sources that do not have a convenient way of computing a unique rowid. The current check-in almost works, but there are still serious issues. (check-in: 49638f18 user: drh tags: without-rowid-vtab)
18:44
Add the columns=N parameter to the CSV extension. (check-in: 28ebeadd user: drh tags: trunk)
18:08
Add the testflags parameter to the csv extension. (check-in: b93fb2fe user: drh tags: trunk)
16:22
Add the "csv" virtual table for reading CSV files, as an extension in the ext/misc/ subfolder. (check-in: 00d3570c user: drh tags: trunk)
2016-05-30
08:28
Fix an FTS5 problem (segfault or incorrect query results) with "... MATCH 'x OR y' ORDER BY rank" queries when either token 'x' or 'y' is completely absent from the dataset. (check-in: 64ca1a83 user: dan tags: trunk)
05:45
Minor tweaks to the bc_test1 test program. (check-in: d0d0bab4 user: dan tags: begin-concurrent)
2016-05-28
18:53
Experimental change to allow virtual tables to take advantage of LIKE, REGEXP and GLOB terms that are part of OR expressions within WHERE clauses. (Closed-Leaf check-in: 242507b4 user: dan tags: vtab-experimental)
17:45
Remove an unnecessary malloc from the vfsstat extension. (check-in: 24f258c2 user: drh tags: trunk)
17:23
Enhance the sqlite3_load_extension() interface to permit extensions to return SQLITE_OK_LOAD_PERMANENTLY which will prevent the extensions from unloading when the database connection closes. (Closed-Leaf check-in: d3f99a5e user: drh tags: load-permanently)
15:22
Enhance "PRAGMA compile_options" so that it shows the version of the compiler used to generate the executable, for common compilers. (check-in: 6a0f2009 user: drh tags: trunk)
15:09
Update the amalgamation-tarball configure script so that it can use header file "readline/readline.h" with library file "libedit". (check-in: cbf72b04 user: dan tags: trunk)
15:03
Enhance the sqlite3_load_extension() API so that the first parameter (the "db" parameter) can be NULL. An extension that is not associated with any database connection remains loaded for the life of the process. (Closed-Leaf check-in: 3a461043 user: drh tags: persistent-extensions)
14:53
Add the vfsstat.c loadable extension - a VFS shim that measures the amount of I/O, and an eponymous virtual table that is used to extract and view the measurements. (check-in: 0987487d user: drh tags: trunk)
00:13
Clang can define _MSC_VER in some circumstances; therefore, check for Clang first. (Closed-Leaf check-in: 3f710bc3 user: mistachkin tags: ctimeCompiler)
2016-05-27
21:13
Check for Clang before GCC. (check-in: 7c2cd4b0 user: mistachkin tags: ctimeCompiler)
20:30
Remove surplus quotation marks from the COMPILER= compile_options setting for Clang. (check-in: 5c966f20 user: mistachkin tags: ctimeCompiler)
19:34
Remove surplus quotation marks from the COMPILER= compile_options setting for GCC. (check-in: 664c132d user: drh tags: ctimeCompiler)
18:09
Add basic compiler information to the results of 'PRAGMA compile_options'. (check-in: d734e2df user: mistachkin tags: ctimeCompiler)
12:30
Improvements to WHERE-clause debug tracing. Show TK_MATCH expressions and show more details on WhereTerm traces. (check-in: 71087c12 user: drh tags: trunk)
04:10
Fix Lemon so that it actually works with -DYYSTACKDEPTH=0. (check-in: a9be4c2d user: drh tags: trunk)
01:07
Fix the Lemon-generated parser so that it compiles with -DYYSTACKDEPTH=0. It does compile now, but there are subtle issues still. (check-in: 28d439f8 user: drh tags: trunk)
2016-05-26
20:56
Add a new OP_SeekRowid opcode, that combines the functions of OP_MustBeInt and OP_NotExists. This makes the code slightly smaller and faster. (check-in: ffe80a1b user: drh tags: trunk)
20:52
Add further instrumentation to the bc_test1.c test app. (check-in: 5528de4a user: dan tags: begin-concurrent)
2016-05-25
18:53
Add the libvers.c tool in the tool/ subdirectory. (check-in: 2a41f098 user: drh tags: trunk)
2016-05-24
18:55
Enhance Lemon and the parser template so that it can once again build parsers that have no unreachable branches. (check-in: 41fd46e2 user: drh tags: trunk)
18:50
Minor change to the walcrash4.test module so that it works when SQLITE_DEFAULT_WAL_SYNCHRONOUS is set to something other than 2. (check-in: 61e239bc user: drh tags: trunk)
16:20
Fix an obscure problem with transactions written in "PRAGMA synchronous=full" mode on systems that do not support POWERSAFE_OVERWRITE causing an xSync() call to be omitted if the last frame written by a transaction is aligned to a sector boundary. This means that if a power failure or OS crash occurs very soon after such a transaction is committed, it may be lost following system recovery. (check-in: 37de3eab user: dan tags: trunk)
00:40
Improvements to the initialization of the push-down automoton for the Lemon-generated parser. Smaller and faster. (check-in: 3b28b68e user: drh tags: trunk)
2016-05-23
21:56
Use a pointer to the top of the stack rather than an index into the stack in the Lemon-generated parser template, for about 6.6% parser performance gain. (check-in: 3c2a7705 user: drh tags: trunk)
19:02
Avoid a minor error message when running RTREE without an sqlite_stat1 table. (check-in: 276e92f5 user: drh tags: trunk)
18:27
Fix the rtreeG.test test case. (Closed-Leaf check-in: 9589e937 user: drh tags: tree-stat1-fix)
18:12
Fix RTREE so that it does not run queries against the sqlite_stat1 if that table does not exist. (check-in: 48526a2f user: drh tags: tree-stat1-fix)
18:06
Remove an extra "finish_test" from the end of rtreeC.test. (check-in: bfbb6dd8 user: drh tags: tree-stat1-fix)
16:16
Improve the error messages generated by the rtree module when a constraint fails. (check-in: 3ad2531e user: dan tags: trunk)
16:15
Lemon enhancement: avoid unnecessary reduce actions that convert one non-terminal into another but have no side effects. (check-in: a86e782a user: drh tags: trunk)
14:24
Fix comment typos and improve clarity of presention in Lemon. The output should be identical. (check-in: b91a5b82 user: drh tags: trunk)
02:57
Merge changes from trunk. (check-in: 815cc2bb user: drh tags: apple-osx)
00:10
Update the configure script with additional hints on the location of tclConfig.sh, hints needed by the latest versions of Xcode. (check-in: 90411a28 user: drh tags: trunk)
2016-05-21
23:25
More tweaks to improve the performance of the insert logic, slightly. (check-in: dec13075 user: drh tags: trunk)
20:03
Simplify the sqlite3BtreeInsert() interface by gathering the five arguments describing the content to be inserted into the new BtreePayload structure, and thus reducing the number of parameters from eight to four. (check-in: 55f348cd user: drh tags: trunk)
19:10
Remove some unused legacy code from the btree insert logic. (check-in: 2ce11667 user: drh tags: trunk)
18:50
Use pthreads mutexes and conditions to synchronize threads in bc_test1. (check-in: f33aa76f user: dan tags: begin-concurrent)
12:29
Yet another minor size reduction and performance increase in the b-tree insert logic. (check-in: 1dbaf7a1 user: drh tags: trunk)
11:23
Small size reduction and performance increase in the sqlite3BtreeInsert() logic. (check-in: 656aa1ec user: drh tags: trunk)
00:45
Add the shell-script used for routine performance testing. (check-in: 8e366f18 user: drh tags: trunk)
2016-05-20
23:51
Add a simple TCL script for summing cachegrind information for each VDBE opcode. (check-in: 96cf821b user: drh tags: trunk)
21:40
Another optimization on the OP_Column opcode. (check-in: 1765672c user: drh tags: trunk)
20:58
Fix typo in comment. (check-in: 9db8f214 user: mistachkin tags: trunk)
19:51
Slight performance improvement in the OP_Column opcode. (check-in: 5c157474 user: drh tags: trunk)
18:09
Remove the sqlite3PagerClearCache() routine, which does not accomplish anything useful. (check-in: f250166b user: drh tags: trunk)
15:53
Performance optimization and size reduction on the freeP4() routine. (check-in: 4dc56e86 user: drh tags: trunk)
15:24
Increase the version number to 3.14.0 since we are already making significant code changes. (check-in: 1a0d0576 user: drh tags: trunk)
15:15
Use sqlite3VdbeAddOp0() to code OP_Expire, to save a few bytes. (check-in: 3d55d24d user: drh tags: trunk)
14:54
Optimizations to link list merge sort code in vdbesort.c, pcache.c, and rowset.c. Resulting binaries are 10 bytes smaller and use 0.03% fewer CPU cycles. (check-in: 9033afbb user: drh tags: trunk)
14:11
For queries with both ORDER BY and LIMIT, if the rows of the inner loop are emitted in ORDER BY order and the LIMIT has been reached, then optimize by exiting the inner loop and continuing with the next cycle of the first outer loop. (check-in: 559733b0 user: drh tags: trunk)
13:44
Set the NULLEQ flag on the sequence counter comparison in the ORDER BY LIMIT optimization, to avoid coverage complaints about not testing the NULL case. (Closed-Leaf check-in: ed1b30dc user: drh tags: orderby-limit)
12:22
Autoconf configure.ac adjustment to try to get it to look for both editline and readline automatically. (check-in: 645bd696 user: drh tags: trunk)
00:21
A few simple test cases for the ORDER BY LIMIT optimization. (check-in: 08849eab user: drh tags: orderby-limit)
2016-05-19
22:40
Appears to work now. Needs test cases, more comments, and code optimization. (check-in: 990fe50c user: drh tags: orderby-limit)
22:13
In a query with both ORDER BY and LIMIT, if the inner loop satisfies the ORDER BY then try to cut short each invocation of the inner loop once the LIMIT has been satisfied. This check-in is a partial implementation only. (check-in: 852d1eda user: drh tags: orderby-limit)
19:31
Fixup comments on wctrlFlags value definitions. (check-in: 58b516e8 user: drh tags: trunk)
18:56
Clean up the WHERE_* macros used for the wctrlFlags parameter on the sqlite3WhereBegin() interface, freeing up some bits to be used for other things. (check-in: d0130584 user: drh tags: trunk)
17:51
Optimization marks in vdbe.c. No logic changes. (check-in: cf273741 user: drh tags: trunk)
16:58
Performance improvement in the OP_Column opcode. (check-in: 4737cadc user: drh tags: trunk)
16:21
Add test cases to test some fts3/4 edge case behaviour surrounding the '*' character. (check-in: 1f577e1f user: dan tags: trunk)
11:12
Small size reduction and performance improvement in the OP_Column opcode. (check-in: 0d773061 user: drh tags: trunk)
2016-05-18
21:03
Add the "scrub" utility program that simultaneously backs-up a live database and erases all deleted content. (check-in: c981ab2a user: drh tags: trunk)
21:01
Omit the unnecessary WHERE_REOPEN_IDX flag in the WHERE interface. (check-in: 915416d1 user: drh tags: trunk)
20:53
Merge the 3.13.0 release changes. (check-in: e2e9b985 user: drh tags: apple-osx)
10:57
Version 3.13.0 (check-in: fc49f556 user: drh tags: trunk, release, version-3.13.0)
2016-05-17
21:17
Enhance the scrub utility program so that it does a FULL checkpoint prior to starting the backup, to ensure that the database file content matches what needs to be backed up without having to look at the WAL file. (Closed-Leaf check-in: ab1c5ce5 user: drh tags: scrub-backup)
17:11
Merge the latest changes from trunk. (check-in: 5021dfe1 user: drh tags: scrub-backup)
2016-05-16
14:35
Do not run snapshot_fault.test as part of the inmemory_journal permutation. (check-in: 995c084b user: dan tags: trunk)
13:37
Merge recent fixes from trunk. (check-in: 0d9b82af user: drh tags: apple-osx)
11:55
Disable shell.exe test cases for UTF8 filenames as they do not work on MinGW. (check-in: 386bcbba user: drh tags: trunk)
2016-05-13
17:22
Improvements to a comment in the pcache.c file. No changes to code. (check-in: b369980f user: drh tags: trunk)
15:22
Remove the unused PGHDR_NEED_READ flag. Add invariant checking (during SQLITE_DEBUG builds only) for the PgHdr object. (check-in: 771c5411 user: drh tags: trunk)