SQLite

Timeline
Login

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

100 check-ins occurring around 4635f4a69c.

2022-09-11
02:43
Initial prototype impls of write/delete-key ops for the pending kvvfs which use sessionStorage or localStorage for db page storage. read-key op is pending. (check-in: a4bd96f534 user: stephan tags: fiddle-opfs)
2022-09-10
20:01
Rework recover extension code for readability. (check-in: 1a2540960e user: dan tags: recover-extension)
18:38
Improved comments in os_kv.c. Better names for the key/value name spaces. (check-in: 8e1652a385 user: drh tags: kv-vfs)
18:20
Move the vfskv.c extension to src/os_kv.c and make it part of the amalgamation, activated if and only if SQLITE_OS_KV is true. (check-in: f6632e69c2 user: drh tags: kv-vfs)
13:50
Enhance the b-tree page sorting code to ensure that sqlite3PagerRekey() never overloads a page number and uses only the PENDING_BYTE page for temporary storage. (check-in: aa6a5b7297 user: dan tags: branch-3.39)
2022-09-09
20:44
Further fixes to comments in sqlite3recover.h. Also rework some data structures in sqlite3recover.c. (check-in: 599d1f8ec2 user: dan tags: recover-extension)
17:50
Fix harmless compiler warning seen with MSVC. (check-in: 73c4c68d3b user: mistachkin tags: trunk)
16:25
Handle recovery of virtual tables by recovering each shadow table individually, then writing the CREATE VIRTUAL TABLE statement directly into the sqlite_schema table. (check-in: 5f2d5ccd56 user: dan tags: recover-extension)
16:16
Database must be named either "local" or "session". Each has a distinct namespace. (check-in: c8e4127929 user: drh tags: kv-vfs)
14:22
Separate sqlite3_io_methods objects for database files and journals. (check-in: 74fbf6c2a9 user: drh tags: kv-vfs)
11:41
Simple reading and writing now works. (check-in: 00845ac9ef user: drh tags: kv-vfs)
05:39
Remove a reference to a completed TODO. (check-in: 757ad69607 user: stephan tags: fiddle-opfs)
04:50
speedtest1 wasm: add a link in the worker variant which launches the main-thread variant with the selected CLI flags. Append collected stdout/stderr to the main-thread page after execution is finished to avoid having to open the dev tools (which inexplicably slows down wasm execution). (check-in: 02709ee2be user: stephan tags: fiddle-opfs)
2022-09-08
21:43
Update comments in sqlite3recover.h. (check-in: 14164047c4 user: dan tags: recover-extension)
21:33
Make use of the --big-transactions flag in the speedtest1 JS apps. (check-in: f2846dcbca user: stephan tags: fiddle-opfs)
21:09
Add speedtest1 --big-transactions flag to cause its large tests which rely on implicit transactions to be wrapped in BEGIN/COMMIT, per /chat discussion. Added to support of the WASMFS build, which slows down significantly when thousands of implicit transactions are used. (check-in: 51395c005d user: stephan tags: fiddle-opfs)
20:04
Minor build cleanups and tweaks in the speedtest1 wasm apps. (check-in: 5240fb4d79 user: stephan tags: fiddle-opfs)
19:53
Experimentally add --nomutex flag to speedtest1 to have it open db with the SQLITE_OPEN_NOMUTEX flag. (check-in: 45ef576b2e user: stephan tags: fiddle-opfs)
19:22
Update the shell to use the recover extension for the .recover command. (check-in: ae832e7708 user: dan tags: recover-extension)
17:42
Fix problems with recovering the sqlite_sequence table. (check-in: 356d2209ea user: dan tags: recover-extension)
17:12
Compiles and loads as an extension. Starts to run but quickly hits issues. (check-in: 2e38726f46 user: drh tags: kv-vfs)
16:27
Compiles without error, but untested. (check-in: a329939c32 user: drh tags: kv-vfs)
15:48
Code snapshot. Completely untested. Probably does not compile. (check-in: 51e267696d user: drh tags: kv-vfs)
15:30
Add speedtest1-worker.html, an interactive Worker-thread variant of speedtest1.html. Add ext/wasm/index.html to act as a gateway to the various test pages. (check-in: f16c68ee6d user: stephan tags: fiddle-opfs)
11:04
Add new test file recoverclobber.test. (check-in: cb4e950c47 user: dan tags: recover-extension)
2022-09-07
20:14
Enhance an assert() to impose for tighter constraints on the operation of pcache. (check-in: 461511cc99 user: drh tags: branch-3.39)
20:11
Enhance an assert() to impose for tighter constraints on the operation of pcache. (check-in: 42105eb43a user: drh tags: trunk)
19:58
Fix the windows build so that it works with -DSQLITE_OMIT_AUTOINIT. (check-in: 1662eb07d8 user: drh tags: branch-3.39)
19:50
Ensure that the Rekey() operation does not overwrite an existing page number. (check-in: cd1e40064c user: drh tags: branch-3.39)
19:35
Increase the version number to 3.39.4 (check-in: e98bed127d user: drh tags: branch-3.39)
19:28
An improved technique for ensuring that the Rekey() operation does not overwrite an existing page number. This approach does not change the semantics of the underlying pluggable pcache and it is easier to prove correct. This replaces the changes at [aadd38f99a3e5abc] and [81cff9f1955874aa]. (check-in: 7dbddde79e user: drh tags: trunk)
17:29
Non-working code towards a VFS for text key/value storage. (check-in: f9c89ee8d5 user: drh tags: kv-vfs)
16:41
Ensure that the recover extension properly escapes CR and NL characters in text mode. Also that it holds transactions open on both input and output databases for the duration of a recovery operation. (check-in: 6cca8913e7 user: dan tags: recover-extension)
2022-09-06
23:04
Add a note about Emscripten's -sSINGLE_FILE flag, why it would be nice, and why we can't use it. (check-in: 5ea0623630 user: stephan tags: fiddle-opfs)
20:17
Get speedtest1.js working with WASMFS/OPFS. (check-in: 40e60f570d user: stephan tags: fiddle-opfs)
19:38
Tests and a fix for the SQLITE_RECOVER_ROWIDS option. (check-in: 1d5000f571 user: dan tags: recover-extension)
16:47
Initial build of speedtest1.wasm and speedtest1.html with which to run it. (check-in: 4441535e3e user: stephan tags: fiddle-opfs)
16:35
Minor internal doc clarifications. (check-in: 09796cc2bf user: stephan tags: fiddle-opfs)
09:59
Merge trunk into fiddle-opfs branch. (check-in: 7f76eaec79 user: stephan tags: fiddle-opfs)
2022-09-05
22:54
Add the tool/omittest-msvc.tcl script that will try to build using MSVC using various compile-time options, to ensure that the compile-time options all build without errors. (check-in: 6b00ecb59f user: drh tags: trunk)
22:53
Get the tool/omittest-msvc.tcl script working. (Closed-Leaf check-in: 82b89f8a07 user: drh tags: msvc-omit-test)
21:22
Fix a problem with script mode and lost-and-found tables. (check-in: 09ec588d2f user: dan tags: recover-extension)
21:00
Add a mode to output SQL statements instead of populating a database to the recover extension. (check-in: 73058416e7 user: dan tags: recover-extension)
20:42
Add a prototype for a script, similar to tool/omittest.tcl, that is designed to test builds using MSVC to ensure they work with various OMIT options. (check-in: b1e37a0bd3 user: drh tags: msvc-omit-test)
18:17
Fix the windows build so that it works with -DSQLITE_OMIT_AUTOINIT. (check-in: f74a5ea8c9 user: drh tags: trunk)
15:56
Add the SQLITE_RECOVER_ROWIDS option. To specify that rowid values that are not also explicit INTEGER PRIMARY KEY values should be preserved. (check-in: 69cc9aba56 user: dan tags: recover-extension)
13:36
Merge patches for version 3.39.3 into the reuse-schema-3.39 branch. (check-in: efd54164b0 user: drh tags: reuse-schema-3.39)
13:24
Minor cleanups in OO API #1. Add Sudoku SQL to batch-runner.js's list. (check-in: 4488cb5798 user: stephan tags: fiddle-opfs)
12:39
Version 3.39.3 patches applied to the begin-concurrent branch. (Leaf check-in: 31304de83e user: drh tags: begin-concurrent-3.39)
11:02
Version 3.39.3 (check-in: 4635f4a69c user: drh tags: release, branch-3.39, version-3.39.3)
2022-09-03
21:08
Add an option to assume the freelist is corrupt when recovering data. (check-in: 253e498f52 user: dan tags: recover-extension)
20:31
Take the freelist into account when recovering data that is not linked in to any tree associated with a schema entry. (check-in: dbd1f1efb3 user: dan tags: recover-extension)
20:07
Further work on making the recover extension compatible with the .recover command. (check-in: f2ac315844 user: dan tags: recover-extension)
11:41
wasm: minor text and build cleanups. (check-in: 36ceef94e1 user: stephan tags: fiddle-opfs)
2022-09-02
21:21
Ensure the Pager.journalOff variable is zeroed if an error occurs while writing the initial header to the journal file. (check-in: fe547035ce user: dan tags: branch-3.39)
21:19
Ensure the Pager.journalOff variable is zeroed if an error occurs while writing the initial header to the journal file. (check-in: da7af29096 user: dan tags: trunk)
19:18
Remove a NEVER() that is sometimes true. (check-in: 85a8a11740 user: drh tags: branch-3.39)
17:26
Fix an assert() associated with the dbsqlfuzz error at [8372468bb5d8922c]. (check-in: f448480e1b user: drh tags: branch-3.39)
17:25
Fix an assert() associated with the dbsqlfuzz error at [8372468bb5d8922c]. (check-in: 54251f81eb user: drh tags: trunk)
16:45
When an OOM occurs and sets the Parse.nErr value, also set the Parse.nErr value for all outer Parse objects. dbsqlfuzz d33f60aaa67733aa700cd69dacf8e0e23a327a29 (check-in: 073621afa2 user: drh tags: branch-3.39)
15:53
When an OOM occurs and sets the Parse.nErr value, also set the Parse.nErr value for all outer Parse objects. dbsqlfuzz d33f60aaa67733aa700cd69dacf8e0e23a327a29 (Leaf check-in: b17a250368 user: drh tags: branch-3.39-pcache)
15:19
If sqlite3PcacheMove() moves a page on top of another, swap the two pages, moving the other back to the page number of the original. (check-in: 04eb9f97b9 user: drh tags: branch-3.39-pcache)
15:09
If sqlite3PcacheMove() really performs a swap, then be sure to renumber the second page. (check-in: 81cff9f195 user: drh tags: trunk)
14:29
Enhance the pcache1 implementation so that during an xRekey operation if another page already exists at the destination, that other page gets moved to the source key. (check-in: aadd38f99a user: drh tags: trunk)
12:12
Mutex protect access to the sqlite3_test_directory and sqlite3_data_directory global variables. See forum thread 719a11e1314d1c70. (check-in: 34c6ec3989 user: drh tags: branch-3.39)
11:45
Mutex protect access to the sqlite3_test_directory and sqlite3_data_directory global variables. See forum thread 719a11e1314d1c70. (check-in: 8e6ad3a3e9 user: drh tags: trunk)
11:12
Improved mutex protection of the sqlite3_temp_directory and sqlite3_data_directory global variables. (Closed-Leaf check-in: ebbe9634d6 user: drh tags: tempdir-mutex)
00:36
Experimental changes to put sqlite3_temp_directory behind a mutex. (check-in: 5ee3515fbb user: drh tags: tempdir-mutex)
2022-09-01
21:00
Further work on making recovery extension compatible with the shell tool ".recover" code. (check-in: 8df7c7d0dc user: dan tags: recover-extension)
14:33
Defer deleting a transient SELECT statement associated with a flattening of one arm of a compound SELECT until after the parse has completed. (check-in: 8403c0d5d6 user: drh tags: branch-3.39)
13:51
Defer deleting a transient SELECT statement associated with a flattening of one arm of a compound SELECT until after the parse has completed. This is a follow-up and enhancement to check-in [6e6b3729e0549de0] in response to an assertion fault reported by Chromium. (check-in: 1c4157c71c user: drh tags: trunk)
10:41
In the query planner, add a heuristic that will reduce the cost of a full table scan for a materialized view or subquery if the full scan is the outer-most loop. This is shown to speed up some queries. (check-in: e3754cc188 user: drh tags: branch-3.28)
10:29
In the query planner, add a heuristic that will reduce the estimated cost of a full table scan for a materialized view or subquery if the full scan is the outer-most loop. This is shown to speed up some queries. (check-in: 609fbb94b8 user: drh tags: trunk)
2022-08-31
20:45
Add new files for an extension to recover data from corrupted databases. (check-in: f8298eeba0 user: dan tags: recover-extension)
15:04
Enhance the b-tree page sorting code to ensure that sqlite3PagerRekey() never overloads a page number and uses only the PENDING_BYTE page for temporary storage. (check-in: 5007742886 user: drh tags: trunk)
14:40
Do not attempt the OP_Count optimization on queries with HAVING clauses. This fixes a problem exposed by [2cf373b10c9bc4cb]. (check-in: 5f93239a8c user: drh tags: branch-3.39)
00:44
Checked in the wrong change by mistake. (Closed-Leaf check-in: 984a07d7f1 user: drh tags: mistake)
2022-08-30
17:57
batch-runner.js: add rudimentary metrics export to CSV. Add a toggle to reverse the log output mode (in normal order or most recent first). (check-in: b26e2bc055 user: stephan tags: fiddle-opfs)
16:54
Improved comments in pcache1.c. No changes to code. (check-in: dd017bb1b3 user: drh tags: trunk)
14:13
Any function call can abort. Take this into account when deciding if a DML statement needs a statement journal. See forum thread 9b9e4716c0d7bbd1 for more information. (check-in: 5bf4c5fd0a user: drh tags: branch-3.39)
10:26
batch-runner.js: re-enable unlink-before-run so that OPFS speedtest1 batch can work. (check-in: ba08f7a7f1 user: stephan tags: fiddle-opfs)
10:04
batch-runner.js: move generated SQL files into ./sql and start adding hand-written ones (like the Mandelbrot) to that set. (check-in: 06c106a7d2 user: stephan tags: fiddle-opfs)
09:51
Remove the .timer script entry from fiddle app because emscripten has removed getrusage(), which breaks the timer. (check-in: 9034f19ae5 user: stephan tags: fiddle-opfs)
09:49
wasm util: remove superfluous function.bind() calls to eliminate a level of call() indirection. (check-in: 1aab962798 user: stephan tags: fiddle-opfs)
00:11
Any function call can abort. Take this into account when deciding if a DML statement needs a statement journal. See forum thread 9b9e4716c0d7bbd1 for more information. (check-in: 5c95ae6c9b user: drh tags: trunk)
2022-08-29
18:58
Lots of tweaking in batch-runner.js. Minor internal API update in OO #1 API. (check-in: 24b82b9504 user: stephan tags: fiddle-opfs)
17:41
Add test descriptions to the speedtest1 '-- begin' markers for potential display by the downstream JS code which uses those markers. (check-in: e5b7006f0f user: stephan tags: fiddle-opfs)
12:39
Add batch-runner.js for running batch SQL scripts with timing info. (check-in: 11f3ed6115 user: stephan tags: fiddle-opfs)
12:31
Add get/setPtrValue() to the common wasm utils. (check-in: 24d70fc458 user: stephan tags: fiddle-opfs)
09:51
Add begin/end comment markers to the test blocks in speedtest1 --script output to facilitate chopping up the output into chunks for JS-side processing. (check-in: ef0b7ef2d2 user: stephan tags: fiddle-opfs)
08:04
oo #1 api: correct a case where a null callback is called. Rename some vars for clarity. Increase wasm-side memory in order to be able to load the speedtest1 output. (check-in: b5058f14fa user: stephan tags: fiddle-opfs)
2022-08-27
16:11
More assert() statements in the page cache. (check-in: 7c96a56c0d user: drh tags: trunk)
14:43
Ensure that every pcache page always has either the PGHDR_DIRTY or the PGHDR_CLEAN bit set, even during transient page reshuffling during btree balancing. (check-in: e67f03c166 user: drh tags: trunk)
2022-08-25
19:38
Merge changes from trunk into the fiddle-opfs branch. (check-in: 34279797be user: stephan tags: fiddle-opfs)
19:29
Ensure that sqlite3_prepare() inputs always have a semicolon terminator in speedtest1. (check-in: c72756b0f2 user: drh tags: trunk)
19:19
Add the --script option to speedtest1. (check-in: 1c87d7c58d user: drh tags: trunk)
18:29
Fix the bytecode engine so that it is able to handle an incoming SQLITE_TOOBIG error, which is now possible using the statement cache. (check-in: 7763b98b36 user: drh tags: stmt-cache)
17:12
Do not attempt to cache DDL statement. (check-in: 8f6a1f77b8 user: drh tags: stmt-cache)
15:09
Improved documentation of new features. Minor speed enhancements. (check-in: da9aa5476c user: drh tags: stmt-cache)
14:31
Merge changes from trunk into the stmt-cache branch. (check-in: bc988ce727 user: drh tags: stmt-cache)