SQLite

Timeline
Login

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

50 most recent check-ins

2025-06-22
22:48
Add the --disable-rpath configure script flag to address forum post 13cac3b56516f849. (Leaf check-in: a59d9bb25e user: stephan tags: trunk)
12:04
API doc typo fixes from brickviking. (check-in: 18e07f8f53 user: stephan tags: trunk)
2025-06-21
16:33
Minor JS test cleanups prompted by a linter. (check-in: 764235a3d1 user: stephan tags: trunk)
16:18
Remove some duplicated JS tests. (check-in: d1cb9ed79d user: stephan tags: trunk)
16:02
Reduce the maximum --size flag for JS kvvfs speedtest1 from 4 to 2, as --size 3 and 4 are overflowing the kvvfs storage limits. (check-in: b77b3adc82 user: stephan tags: trunk)
15:58
Give oo1.Stmt.get() similar treatment to [8c187140a60b]. This is an internal change only - the API is unaffected. (check-in: f5a7abc0a4 user: stephan tags: trunk)
15:38
Extend the SEE-via-kvvfs tests to include all three key types. (check-in: fc001aa5ee user: stephan tags: trunk)
14:38
Rework how JS's oo1.DB.exec() flags its Stmt objects to make certain Stmt APIs illegal (i.e. throwing) if called while that Stmt is being step()ped by DB.exec() (which can happen via client-provided per-result-row callbacks). This is an internal change only - the API is unaffected. Remove some unrelated dead code. (check-in: 8c187140a6 user: stephan tags: trunk)
06:07
Numerous small doc typo from BrickViking. (check-in: 3aab4415de user: stephan tags: trunk)
2025-06-20
13:12
Enhance sqlite3BtreeSetPageSize() so that it detects early if no changes are needed and exists with SQLITE_OK. (check-in: c978aed3b6 user: drh tags: trunk)
2025-06-19
20:19
Fix an out-of-order local variable declaration in ext/misc/fileio.c. (check-in: a88bb75288 user: drh tags: trunk)
20:00
Improve the accuracy of sqlite3BtreeRowCountEst(). (check-in: e553fb538e user: drh tags: trunk)
19:33
Generalize the indexCellCompare() so that works on any index page, not just the current page that a cursor is pointing to. (check-in: b305a7f5db user: drh tags: trunk)
13:48
Cherry-pick of documentation updates from trunk - no code changes. (Leaf check-in: c53906260e user: drh tags: branch-3.50)
12:35
A slight doc rephrasing for clarity, suggested in the forum. (check-in: 0d6084a398 user: stephan tags: trunk)
10:46
Doc typo fixes from forum post 0bce273669. (check-in: 8f97e3f00d user: stephan tags: trunk)
10:25
Expose the column metadata APIs to WASM (which does not require a non-default sqlite3.c build, contrary to my prior mistaken claims). This adds only 424 bytes to sqlite3.wasm and 660 bytes to sqlite3.js. (check-in: 3cf983816c user: stephan tags: trunk)
2025-06-18
19:04
Extend the pedantic enforcement of type in STRICT tables to cover VIRTUAL columns. (check-in: b734c74e55 user: drh tags: trunk)
16:17
Enforce judgmental typing on STORED generated columns for STRICT tables. Forum post 6caf195248. (check-in: 5e9279bff0 user: drh tags: trunk)
15:37
Export the column-metadata APIs to WASM. Doing so requires a non-default build of sqlite3.c, so this is a proof-of-concept branch saved just in case SQLITE_ENABLE_COLUMN_METADATA ever becomes the default for sqlite3.c. Edit: that was a misunderstanding on my part. This build increases the .wasm file by only 424 bytes and the JS by 660, so there's no blocker to merging this. (Closed-Leaf check-in: 59db3f639d user: stephan tags: wasm-column-metadata)
15:22
Add the --enable-column-metadata flag to the configure script (off by default). It's only available in the canonical build, not the autoconf build, because it changes how sqlite3.c gets generated. (check-in: 986b601db1 user: stephan tags: trunk)
14:17
Eliminate configure/build discrepancies in how 'make tclextension-...' works vs other makefile-side handling of the extension, conforming to the former. (check-in: 7ca545fd3b user: stephan tags: trunk)
14:14
Change the definition of SQLITE_DYNAMIC to a function that has exactly the same type as sqlite3_destructor_type, in an effort to work around possible legacy compiler bugs. (check-in: 83553edf78 user: drh tags: trunk)
11:11
Add the --tclConfig.sh FILE flag to buildtclext.tcl to eliminate the discrepancy between the configure-time-detected tclConfig.sh and the one auto-detected by the tclextension family of makefile targets. Add the tclextension-all target to run all of the various tclextension-... targets in their natural order to facilitate testing changes like this one. Update the --help text to note that --with-tclsh should only be used if there's a specific need, and that --with-tcl is generall preferred. This is in response to Termux ticket 23268. (check-in: 928976abcb user: stephan tags: trunk)
2025-06-17
20:50
tea: remove the vsatisfies 8.6- enforcement from the extension because at least one platform with tcl 8.6 is inexplicably failing it. Forum post fde857fb8101a4be (check-in: 7331e32a76 user: stephan tags: trunk)
19:32
Avoid writing frames with no checksums into the wal file if a savepoint is rolled back after dirty pages have already been spilled into the wal file. Also fix a corner case in the previous check-in on this branch. (check-in: c232fa2bfc user: drh tags: branch-3.50)
19:10
Avoid writing frames with no checksums into the wal file if a savepoint is rolled back after dirty pages have already been spilled into the wal file. (check-in: 5973f9b9aa user: drh tags: trunk)
18:57
Fix a corner-case for [9441fff52cc4e19c]. (check-in: 336a59eb3a user: drh tags: trunk)
18:17
Update walcksum.test so that it works with SQLITE_DEFAULT_AUTOVACUUM=1 builds. (Closed-Leaf check-in: 0da16f6c62 user: dan tags: forum-b490f726db-fix)
17:15
Extend [b5c6cb13cff5] to use a wildcard on darwin* because some OSes report a version number in the suffix. Forum post 0c4bbc2962dfb06e. (check-in: d960bd6f92 user: stephan tags: trunk)
14:56
Minor proj.tcl portability fixes and cleanups suggested in forum post 7b218c3c9f. Tested on Linux, Msys, Cygwin, and Haiku. (check-in: b5c6cb13cf user: stephan tags: trunk)
14:37
proj.tcl portability fixes and cleanups suggested in forum post 7b218c3c9f. Branching so that it can be tested on msys/cygwin/haiku before committing to it. (Closed-Leaf check-in: 89552e9137 user: stephan tags: linux-named-apple)
11:36
Avoid writing frames with no checksums into the wal file if a savepoint is rolled back after dirty pages have already been spilled into the wal file. Possible fix for forum post b490f726db. (check-in: 3a3269fe8e user: dan tags: forum-b490f726db-fix)
2025-06-16
18:04
Fix an issue going back to version 3.39.0 with transitive IS constraints in queries that make use of RIGHT JOIN. (check-in: 6c5f4c8af9 user: drh tags: branch-3.50)
17:36
Fix an issue going back to version 3.39.0 with transitive IS constraints in queries that make use of RIGHT JOIN. Problem reported by forum post 68f29a2005. (check-in: 9441fff52c user: drh tags: trunk)
16:07
Improved debugging output for the transitive constraint optimization. (check-in: 94b53c20e9 user: drh tags: trunk)
15:34
Make the show-%p-az-zero hack of the previous check-in configurable at run-time using the 0x100000 bit of either .treetrace or .wheretrace. As before, this is all a no-op except for debugging builds. (check-in: a29627d7e7 user: drh tags: trunk)
13:51
Add an "#if 0" that can be changed to "1" to cause all %p output to render as 0, thus making comparisons of .treetrace and .wheretrace output easier. (check-in: 65e2704c0b user: drh tags: trunk)
2025-06-14
18:02
Generalize the indexCellCompare() so that works on any index page, not just the current page that a cursor is pointing to. (Leaf check-in: eda518028f user: drh tags: flex-search)
14:46
Fix issues with expression indexes for flex-search queries. (check-in: 711608e49b user: drh tags: flex-search)
13:18
Add the ability to disable the Flex-Search optimization using SQLITE_TESTCTRL_OPTIMIZATION. (check-in: 5319a55ab2 user: drh tags: flex-search)
09:54
Generates code to implement either an index search or a table scan, according to the results of the OP_IfUseIndex opcode. But does not always work. And the OP_IfUseIndex opcode is currently an unconditional "yes". (check-in: 9872df2b85 user: drh tags: flex-search)
2025-06-13
11:08
Further improvements to the EQP text for flex-search. (check-in: 40a83da503 user: drh tags: flex-search)
00:50
Change the flex-search EQP message to be "SEARCH ... OR SCAN" as this seems less disruptive and more readable. (check-in: 680e278c3e user: drh tags: flex-search)
00:25
Fix test cases on the expert extension. (check-in: c46feb36b5 user: drh tags: flex-search)
2025-06-12
19:02
Preliminary code generation for flex-search. Add a no-op IfUseIndex opcode as a placeholder. (check-in: 521948c64f user: drh tags: flex-search)
13:40
Merge latest trunk enhancements and fixes into the experimental flex-search branch. (check-in: 51c89c886f user: drh tags: flex-search)
13:27
Have sqlite3_setlk_timeout() take the database handle mutex. This fixes an assert() failure that could occur if sqlite3_setlk_timeout() were called on a threadsafe handle. (check-in: 954efdd30d user: drh tags: branch-3.50)
10:56
Help ext/wasm 'make snapshot' find the wasm docs dir when it's run from outside of my usual checkout structure. (check-in: 0e04136bc5 user: stephan tags: branch-3.50)
07:35
Have sqlite3_setlk_timeout() take the database handle mutex. This fixes an assert() failure that could occur if sqlite3_setlk_timeout() were called on a threadsafe handle. (check-in: a95d126e13 user: dan tags: trunk)