SQLite

Timeline
Login

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

220 check-ins for the month beginning 2025-01-01

Following month ↑
2025-01-31
20:18
Tweaks to [4b4f33d791fe4318] to make it easier to test. (check-in: 2567298f4b user: drh tags: trunk)
18:56
Fix test case numbering in tests recently added to like3.test. (check-in: 6df2098c54 user: drh tags: trunk)
18:45
Expose the new SQLITE_DBCONFIG_ENABLE_ATTACH_CREATE/WRITE and SQLITE_DBCONFIG_ENABLE_COMMENTS (from [325e547a21955]) to JS/WASM. (check-in: 8da1a9af66 user: stephan tags: trunk)
18:34
Remove an assert() that is not true if a trace-callback is deregistered while there are active statements. (check-in: d53c58243d user: dan tags: branch-3.48)
18:33
Remove an assert() that is not true if a trace-callback is deregistered while there are active statements. Forum post 3547aa1078510686. (check-in: 0ecfc4d0eb user: dan tags: trunk)
17:47
Minor cleanups in the opfs-sahpool pause/unpause API demo. (Closed-Leaf check-in: e205cdc468 user: stephan tags: opfs-sahpool-pause)
16:34
Add the conventional license header to sahpool-worker.js and correct the date on the header in sahpool-pausing.js. (check-in: f7c3026b0d user: stephan tags: opfs-sahpool-pause)
16:25
Add a small test app demonstrating cooperative semi-concurrency of the opfs-sahpool VFS using its un/pauseVfs() APIs. (check-in: 09570c55a2 user: stephan tags: opfs-sahpool-pause)
14:58
Fix a problem with LIKE and GLOB processing in utf-16be databases in cases where the utf-8 encoding of a character ends with the byte 0xBF. (check-in: 9d59f8a5f2 user: drh tags: branch-3.48)
14:54
If any errors occur while processing sqlite_dbpage changes, cancel pending truncate operations. (check-in: 3f8d190251 user: drh tags: branch-3.48)
14:52
Fix a problem with LIKE and GLOB processing in utf-16be databases in cases where the utf-8 encoding of a character ends with the byte 0xBF. Forum post d7b90d92ffbfc61f (check-in: 4b4f33d791 user: dan tags: trunk)
14:52
If any errors occur while processing sqlite_dbpage changes, cancel pending truncate operations. (check-in: 6138e0dc4e user: drh tags: trunk)
14:25
Cleanups in the opfs-sahpool VFS pause/unpause feature and its tests. (check-in: 184ba37702 user: stephan tags: opfs-sahpool-pause)
13:32
Three new options to sqlite3_db_config(): ATTACH_CREATE, ATTACH_WRITE, and COMMENTS. (check-in: 325e547a21 user: drh tags: trunk)
12:39
Merge trunk into opfs-sahpool-pause branch. (check-in: 775a547eca user: stephan tags: opfs-sahpool-pause)
12:30
Minor wasm-specific doc touchups. (check-in: 56b618da90 user: stephan tags: trunk)
12:09
Improvements to the SQLITE_DBCONFIG option documentation. (Closed-Leaf check-in: 59f0ba1006 user: drh tags: extra-security)
11:46
Correct a typo in tool/emcc.sh.in which could cause all of the configure-time work to locate the emcc binary to go unused. Reported in forum post feb325cdde5b6f37. (check-in: 66bf67842b user: stephan tags: branch-3.48)
11:45
Correct a typo in tool/emcc.sh.in which could cause all of the configure-time work to locate the emcc binary to go unused. Reported in forum post feb325cdde5b6f37. (check-in: f66efd5b53 user: stephan tags: trunk)
01:34
Add the SQLITE_DBCONFIG_ENABLE_COMMENTS setting (default on) to enable or disable the ability to include comments in SQL input text. (check-in: 393749a2e2 user: drh tags: extra-security)
00:54
Merge all the latest trunk changes into the extra-security branch. (check-in: 86ba57561a user: drh tags: extra-security)
2025-01-30
21:16
The reuse-subroutine optimization might have generated byte-code that loops forever. This check-in fixes the problem. (check-in: a8714e8c44 user: drh tags: branch-3.48)
21:12
The reuse-subroutine optimization [c9a3498113074bbc] might have generated byte-code that loops forever. This check-in fixes the problem. (check-in: 0cc4ed8c6e user: drh tags: trunk)
17:04
Fix a problem causing the write-lock to be held when it should not be in some circumstances following a SEH exception. (check-in: 7eb5accb7c user: dan tags: win32-enable-setlk)
16:07
Remove an unused parameter from an internal-use subroutine in the TCL interface. (check-in: a700692b39 user: drh tags: trunk)
16:00
Improvements to the TCL interface for Tcl9 as suggested by Jan Nijtmans. (check-in: d76c5db866 user: drh tags: trunk)
15:26
Have sqlite3_enable_setlk(-1) configure indefinite blocking locks where they are supported. (check-in: 62009565d2 user: dan tags: win32-enable-setlk)
13:54
Updates to the compile-for-windows.md document. (check-in: bcd22ed686 user: drh tags: trunk)
12:19
Minor code de-duplication across the top-level auto.def and autoconf/auto.def. (check-in: 3c990d77cb user: stephan tags: trunk)
12:01
Disable a test case that (intentionally) does use-after-free, as it does occasionally cause problems even for non-sanitizer builds. (check-in: 23c7d5bea3 user: drh tags: trunk)
11:59
Minor cleanups to the previous checkin. No functional changes. (check-in: 0146a0da53 user: stephan tags: branch-3.48)
11:19
Fix build regression, introduced in [d2fe6b05f38d9d] (3.48.0), in which SQLITE_OMIT and SQLITE_ENABLE flags passed to configure via CFLAGS were not propagated to the OPT_FEATURE_FLAGS list. Reported in forum post 9801e54665afd728. (check-in: ec71d9dcd5 user: stephan tags: trunk)
11:16
Fix build regression, introduced in [d2fe6b05f38d9d] (3.48.0), in which SQLITE_OMIT and SQLITE_ENABLE flags passed to configure via CFLAGS were not propagated to the OPT_FEATURE_FLAGS list. Reported in forum post 9801e54665afd728. (check-in: eedf453694 user: stephan tags: branch-3.48)
10:55
Make two private routines in FTS "static" so that they are not callable from outside of SQLite itself. (check-in: 6d3a3d4e51 user: drh tags: branch-3.48)
2025-01-29
19:02
Fix bug in sessions handling of FK constraints introduced by [e09a0c02] (released in 3.48.0). Bug was preventing a changeset containing FK violations from being applied even when the xConflict(CHANGESET_FOREIGN_KEY) returned OMIT. (check-in: 946f33cd45 user: dan tags: branch-3.48)
18:53
Fix bug in sessions handling of FK constraints introduced by [e09a0c02] (released in 3.48.0). Bug was preventing a changeset containing FK violations from being applied even when the xConflict(CHANGESET_FOREIGN_KEY) returned OMIT. (check-in: d7c0758120 user: dan tags: trunk)
17:26
Consolidate memory allocations made while loading stat4 data in a way that may be more efficient on systems under load. (check-in: af65a902d1 user: dan tags: bedrock)
15:11
If SQLITE_ENABLE_WAL2NOCKSUM is defined, then SQLite calculates the frame checksums used in wal2 mode based on the previous checksum and the frame header only, not the frame body only. This risks corruption following a OS crash or power failure, but also speeds up writes in wal2 mode. (check-in: dc74bd8915 user: dan tags: bedrock)
11:28
Simplify how OpfsSAHPoolUtil.unpauseVfs()'s returned promise is handled. (check-in: d651b8da5a user: stephan tags: opfs-sahpool-pause)
11:08
Add experimental support to pause/unpause an SAHPool OPFS VFS, as discussed in forum post fe8cdb8431c32455, the intent being enable a page to relinquish, perhaps temporarily, the VFS such that the VFS's storage can be accessed by another page/tab. (check-in: 1d2683fe9e user: stephan tags: opfs-sahpool-pause)
2025-01-28
20:32
Enhance the if() and iif() SQL functions so that they support any number of arguments greater than or equal to two. Suggested by forum post 40f7867f75f80. (check-in: fb76d184ee user: drh tags: trunk)
19:03
Fix sessions module handling of tables with generated columns. (check-in: 437fb31638 user: dan tags: trunk)
18:05
Fix a copy/paste typo in the output of vfstrace for xDlClose(). (check-in: ceafa92e7f user: drh tags: branch-3.48)
18:03
Fix a copy/paste typo in the output of vfstrace for xDlClose(). (check-in: 1d57b57c85 user: drh tags: trunk)
12:50
Simplify the IdList object to remove unnecessary fields. Performance increases by about 0.8%. (check-in: a4625bb995 user: drh tags: trunk)
10:56
Fix typo in speedtest.md. (check-in: 984a9cc22c user: drh tags: trunk)
01:37
The new SQLITE_USE_W32_FOR_CONSOLE_IO macro causes Win32 APIs to be used for console I/O and for stdio to be used otherwise. This is reported to be necessary for builds that use a C-language runtime other than the one provided by Microsoft. This changes if for Windows only. It is a bug fix, though we don't have a test case that will demonstrate a malfunction. (check-in: bfb7f49954 user: drh tags: branch-3.48)
01:10
Apparently I got the logic of [abfe488ed67e2e35] confused, even backwards. Change it so that the SQLITE_USE_W32_FOR_CONSOLE_IO macro causes Win32 APIs to be used for console I/O and for stdio to be used otherwise. This is reported to be necessary for builds that use a C-language runtime other than the one provided by Microsoft. This changes if for Windows only. It is a bug fix, though we don't have a test case that will demonstrate a malfunction. (check-in: 925e97e6f4 user: drh tags: trunk)
00:48
Remove an ALWAYS() in the star-query heuristic that is sometimes false if you have a corrupt database. dbsqlfuzz c37ba7728d79859b79c8341b59297e88fba017d3. Test case in TH3. (check-in: 6b9a339628 user: drh tags: trunk)
2025-01-27
21:18
Use hashing to accelerate column matching on INSERT statements. Code is smaller and about 1.8% faster overall according to test/speedtest.tcl. (check-in: 8be956383e user: drh tags: trunk)
17:48
Enhance ./configure to issue an unambiguious error if the pathname to either the source tree or the build directory contains any space characters. (check-in: 614ae5c74f user: drh tags: trunk)
14:12
Avoid splitting a hyperlink across lines in the documentation comment for sqlite3_serialize(). (check-in: 74b770bd44 user: drh tags: trunk)
11:50
Add the sqlite3_setlk_timeout() API. For setting the timeout used by SQLITE_ENABLE_SETLK_TIMEOUT blocking locks without also setting the regular retry-based busy-timeout. (check-in: 4a7eb49279 user: dan tags: win32-enable-setlk)
2025-01-26
23:34
Make two private routines in FTS "static" so that they are not callable from outside of SQLite itself. (check-in: 9b11bed044 user: drh tags: trunk)
20:09
Further comment improvements in the star-query heuristic. Add an ALWAYS() on an unreachable branch to achieve MC/DC. (check-in: 5e18ce68fb user: drh tags: trunk)
17:29
Small size and complexity reduction on the star-query heuristic. Improved comments for the star-query heuristic. (check-in: a7ecb2f4b7 user: drh tags: trunk)
2025-01-25
23:04
Revise the strategy used by the star-query heuristic: Instead of decreasing the cost of all fact-table WhereLoops, increase the run-cost of WhereLoops that are SCANs of dimension tables. (check-in: 1bc09c9e8b user: drh tags: trunk)
14:30
Improvments to debug output on the star-query heuristic. (check-in: b3ebeb0682 user: drh tags: trunk)
00:07
Avoid calling computeMxChoice() after an OOM as some assert()s can fail in that routine if a prior OOM occurred while building the WhereLoop array. (check-in: 8b9e621dbf user: drh tags: trunk)
2025-01-24
20:59
Remove an incorrect ALWAYS() added in check-in [7cfbe14d199bb631]. (check-in: 431a1a29f9 user: drh tags: trunk)
18:37
Clarify handling of a NULL for the 2nd argument to sqlite3_serialize(), as pointed out in forum post 3df7168b90. (check-in: 340edbe554 user: stephan tags: trunk)
16:37
Improve the star-query heuristic so that it does a better job of identifying actual star queries. Also includes improved diagnostic output from the query planner. (check-in: 7cfbe14d19 user: drh tags: trunk)
16:27
The debugging output for WhereLoop objects now shows cost estimate changes due to the star-query heuristic. (Closed-Leaf check-in: a280f5f548 user: drh tags: star-query-heuristic)
15:55
Minor tweaks to the star-query detection and processing. (check-in: 61f76a45ac user: drh tags: star-query-heuristic)
15:49
Fix a race condition causing SQLite to use a busy-handler for an operation that should not. (check-in: 6ab9ed8eef user: dan tags: win32-enable-setlk)
15:41
Correct a version number in autosetup/README.md. (check-in: c338caf0fd user: stephan tags: trunk)
14:51
When looking for star-queries, do not count a table as a dimension table if that table is separated from the fact table by an OUTER or CROSS join or if the table is a self-join. (check-in: 5aebd7df0d user: drh tags: star-query-heuristic)
14:13
Update autosetup/README.md to reflect recent refactoring. (check-in: 601636829b user: stephan tags: trunk)
12:54
Replace a handful of hard tabs in string literals with \t in mkwasmbuilds.c. (check-in: e8e4d497a7 user: stephan tags: trunk)
09:21
Minor additions to ext/wasm/README.md. (check-in: 85747ea165 user: stephan tags: trunk)
09:18
Update ext/wasm/README.md to reflect simplifications permitted by the current configure script behavior. (check-in: 9abb56c6ac user: stephan tags: trunk)
08:58
Remove extraneous are-we-making-clean guards from the generated wasm build rules, as that guard is set at a higher level. Rename a makefile call()able for consistency. (check-in: 7f9074e2a7 user: stephan tags: trunk)
2025-01-23
22:23
wasm: de-list demo-worker1-promiser-esm.html from the test pages because (per Chrome 131) "Module scripts don't support importScripts()", where "don't" means "they used to but no longer do". Edit: this was caused by a build bug, introduced in [0a426a549577b883], which was fixed in [65798c09a00662a3]. (check-in: 4aa025a943 user: stephan tags: trunk)
21:06
Fix a possible infinity loop in debugging-printf logic in the query planner. No changes to production code. (check-in: 9a20b94080 user: drh tags: trunk)
19:44
When running wasm-opt, ignore any failure because it will fail for unknown flags and the set of legal flags will change from version to version. Document the size-reduction effect (or non-effect) of a dozen-odd wasm-opt flags and retain those which demonstrate a wasm file size reduction in -Oz builds (our production build mode). Total size savings: roughly 13kb. (check-in: c9dc581e02 user: stephan tags: trunk)
16:11
Remove some now-dead makefile code, rename a var for consistency, and fix a recipe bug introduced in the previous checkin in the bundler-friendly build. (check-in: 0acd4ef3ad user: stephan tags: trunk)
15:58
Initial support for post-processing wasm files with wasm-opt (if it's available). This currently shaves 12kb off of the release-mode build of sqlite3.wasm but there are many dozens of wasm-opt flags left to try. (check-in: 5d16e3f283 user: stephan tags: trunk)
14:09
Move small parts of ext/wasm/GNUmakefile into ext/wasm/config.make.in and have the configure script populate that, rather than dynamically determining those values on each 'make' invocation. Add a configure-time check for the optional wasm-opt binary in prep for pending experimentation with using it to reduce the wasm file sizes. (check-in: 0a426a5495 user: stephan tags: trunk)
11:42
Have fts5 better handle OOM errors from sqlite3_blob_close(). (check-in: 7ffa7e0244 user: dan tags: branch-3.48)
11:21
Remove unnecessary --minify 0 emcc flag from the wasm build, as -g3 implies that capability along with other anti-minification features we rely on. (check-in: 10c91f9cd0 user: stephan tags: trunk)
06:12
Do not strip binaries during 'make install', for consistency with the legacy build and per request from package maintainers. (check-in: 92b06a4c91 user: stephan tags: branch-3.48)
06:10
Do not strip binaries during 'make install', for consistency with the legacy build and per request from package maintainers. (check-in: cd3fed5c20 user: stephan tags: trunk)
2025-01-22
21:34
Replace the use of the Autools in ./autoconf/ with Autosetup and extend its configure script to include many of the flags available in the canonical build. (check-in: 8c60d4c901 user: stephan tags: trunk)
19:37
Add two new sqlite3_db_config() options that enable the ATTACH command to create new database files and to open databases read/write. Both default to on for backwards compatibility. (check-in: fe0c58d00b user: drh tags: extra-security)
17:18
Add the -q/--quiet option to test/speedtest.tcl. Automatically enable -DSQLITE_OMIT_LOAD_EXTENSION and -DSQLITE_THREADSAFE=0 so that no extra libraries are required. (check-in: c20d21b473 user: drh tags: trunk)
2025-01-21
17:41
Fix date/time computations to deal with the sub-millisecond rounding problem. (check-in: 55091181cc user: drh tags: branch-3.48)
17:37
Fix date/time computations to deal with the sub-millisecond rounding problem identified in forum post 766a2c9231. (check-in: afb0a5923a user: drh tags: trunk)
16:30
Performance improvements to the (debug-use only) Mem.pScopyFrom logic, resulting in about 8x faster performance under -DSQLITE_DEBUG for the query in from forum post 0025389d0860af82. This change only affects builds that use -DSQLITE_DEBUG. (check-in: 7fb1ae25d1 user: drh tags: trunk)
15:45
Explain the lack of docs in autoconf/Makefile.in and refer interested readers to main.mk in canonical tree. Minor cleanups and fixes in tool/mkautoconfamal.sh. (Closed-Leaf check-in: e5bbc2428f user: stephan tags: autoconf-to-autosetup)
15:21
Increase the version number to 3.48.1. (check-in: 3e006d23a5 user: drh tags: branch-3.48)
15:16
Remove an assert() in the unix file locking logic that is not true if alternative VFS "unix-excl" is used for a read-only connection. (check-in: 2fec6aa948 user: drh tags: branch-3.48)
15:12
The FuncDev.nArg field values -3 and -4 now have special meansing of 1 or more or 2 or more arguments, respectively. This saves space in the built-in function table, resulting in slightly faster performance and a reduced binary size. (check-in: 753fd747f2 user: drh tags: trunk)
14:40
Remove now-extraneous autoconf/INSTALL and autoconf/configure.ac and update autoconf/README.* to account for the port to autosetup. (check-in: 646667af8c user: stephan tags: autoconf-to-autosetup)
14:34
Have fts5 better handle OOM errors from sqlite3_blob_close(). (check-in: f418350f3f user: dan tags: trunk)
12:33
Demonstration of how to extend the if() and iif() SQL functions to support more than 3 arguments. (Leaf check-in: f13ef59184 user: drh tags: if-many-args)
11:10
Use Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length string in the TCL interface, since that is much more efficient. (check-in: a8d9dcfd23 user: drh tags: trunk)
2025-01-20
20:50
configure script: work around msys's inability to 'exec' a '.sh' file by prefixing the call with an explicit 'sh', as reported in forum post befb352a42a7cd6d. (check-in: 4cc2dc31a3 user: stephan tags: branch-3.48)
20:48
configure script: work around msys's inability to 'exec' a '.sh' file by prefixing the call with an explicit 'sh', as reported in forum post befb352a42a7cd6d. (check-in: 25b01f1c9a user: stephan tags: autoconf-to-autosetup)
19:57
Add 'dist' and missing 'install' pieces to the autoconf bundle. (check-in: 16fa20413e user: stephan tags: autoconf-to-autosetup)
19:19
Remove an assert() in the unix file locking logic that is not true if alternative VFS "unix-excl" is used for a read-only connection. (check-in: bd5dc92368 user: drh tags: trunk)
18:34
Fix an assert() that could fail if a virtual table called sqlite3_step() from within the xSync() method while committing a "PRAGMA defer_foreign_keys=1" transaction. (check-in: 9303e66340 user: dan tags: branch-3.48)
18:26
Fix an assert() that could fail if a virtual table called sqlite3_step() from within the xSync() method while committing a "PRAGMA defer_foreign_keys=1" transaction. (check-in: 39bdbb3f6d user: dan tags: trunk)
16:14
configure script: remove an overzealous is-a-file check in the tclsh search which fails to account for implicit .exe extensions on Windows builds. Reported in forum post c27403ef974df9f1. (Same change as [89306d1a4905] but to a different file, as that content was moved since the 3.48 release.) (check-in: 239a3d1573 user: stephan tags: trunk)
16:11
configure script: remove an overzealous is-a-file check in the tclsh search which fails to account for implicit .exe extensions on Windows builds. Reported in forum post c27403ef974df9f1. (check-in: 89306d1a49 user: stephan tags: branch-3.48)
2025-01-19
21:47
Get libsqlite3.so and .a building in the autoconf bundle. (check-in: 88cee3fc7c user: stephan tags: autoconf-to-autosetup)
19:51
Get the CLI shell building in the autoconf bundle. (check-in: 241cdbc40a user: stephan tags: autoconf-to-autosetup)
19:14
Add an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner heuristics that are designed to help with star queries. (check-in: fec4ff185a user: drh tags: trunk)
18:58
Initial work towards converting the autoconf bundle to autosetup. Currently non-functional. (check-in: d7708372ff user: stephan tags: autoconf-to-autosetup)
18:32
Further refactoring of auto.def to simplify creation of variant builds like the autoconf bundle. (check-in: f806c563a2 user: stephan tags: trunk)
16:26
Minor internal refactoring of auto.def to support the pending autoconf subdir port to autosetup. No functional changes. (check-in: 01ff375847 user: stephan tags: trunk)
14:53
Move some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in the pending migration of the autoconf bundle to autosetup. This is just reorg, no functional changes. (check-in: 2f1e94994f user: stephan tags: trunk)
2025-01-18
23:44
Enable automatic query-time indexes for WITHOUT ROWID tables. (check-in: 8534af5b94 user: drh tags: trunk)
21:19
Add a simple test case (many more are coming soon to TH3). Fix an obsolete assert(). (Closed-Leaf check-in: aa829a131a user: drh tags: without-rowid-autoidx)
21:00
Add support for automatic query-time indexes on WITHOUT ROWID tables. (check-in: 89c4cbd952 user: drh tags: without-rowid-autoidx)
16:06
When cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion prompted by forum post 9a67df63eda9925c. (check-in: 675582481c user: stephan tags: branch-3.48)
16:05
When cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion prompted by forum post 9a67df63eda9925c. (check-in: 4309da2ca5 user: stephan tags: trunk)
13:52
When running make install, avoid the -s (strip) flag when cross-compiling, as it only works for the build platform. Reported in forum post 9a67df63eda9925c. (check-in: cc29664f97 user: stephan tags: branch-3.48)
13:51
When running make install, avoid the -s (strip) flag when cross-compiling, as it only works for the build platform. Reported in forum post 9a67df63eda9925c. Also remove the undocumented and unused --soname=auto option. (check-in: 230e49c10e user: stephan tags: trunk)
2025-01-17
23:49
For the purpose of the query planner heuristic added by [38db9b5c83], a query should only count as a star query if the fact tables are connected to the dimension table by an INNER JOIN. If a LEFT JOIN is used, then the fact tables are constrained to be in inner loops anyhow and so the heuristic does not make any sense. But it does interfere with AUTOMATIC index creation, which causes the performance regression reported by forum post d87570a1455. (check-in: 0852c57ee2 user: drh tags: trunk)
17:09
Enhance a comment on a test case to add recent context. (check-in: c2647d1bd1 user: drh tags: trunk)
15:56
Typo fix in speedtest.md. (check-in: 36027cf340 user: stephan tags: trunk)
15:39
Improvements to the speedtest.tcl script. Add documentation on how to use the script. (check-in: eb3853d081 user: drh tags: trunk)
12:32
Add the test/speedtest.tcl script to simplify performance and size testing. (check-in: ad7b386726 user: drh tags: trunk)
10:42
Fix a potential one-byte buffer overrun when reading from the Windows console in the CLI. (check-in: 42bcc7c115 user: drh tags: branch-3.48)
10:39
Fix a potential one-byte buffer overrun when reading from the Windows console in the CLI. Forum post 95e17b8f5c. This problem was introduced by check-in [abfe488ed67e2e35], which was an attempt to get the Windows build working on MingGW. (check-in: 4d96759694 user: drh tags: trunk)
2025-01-16
20:46
speedtest1: further improvements to the "json" testset. (check-in: c4750f7cf7 user: drh tags: trunk)
20:08
speedtest1: Improvements to the "json" testset. Better balance in "mix1". (check-in: 2cc73c5e08 user: drh tags: trunk)
17:19
Revamp the "json" testset in speedtest1. (check-in: d33508836b user: drh tags: trunk)
14:37
Add the "json" test case to speedtest1 and include it in "mix1". (check-in: 2db3a3ee37 user: drh tags: trunk)
14:06
Speedtest1 enhancements: (1) Add the ability to scale performance of tests sets using "/NNN" after the testset name, even for testsets in a comma-separated list. (2) Add the "mix1" macro testset. (check-in: 85667b3a57 user: drh tags: trunk)
13:10
wasm: after generating the .js/.mjs file, strip out all of the generated pieces which create Emscripten call() bindings for the sqlite3 APIs, as we don't use those binding, so both the setup time and the memory they use installing WASM proxy bindings is wasted. This eliminates some 200 superfluous/unused bindings from the init process. (check-in: 020d2c7528 user: stephan tags: trunk)
12:15
When generating the autoconf snapshot, replaces the Libs.private line from sqlite3.pc.in with one compatible with the legacy build, as reported in forum post e40b9b424a. (check-in: fe47154799 user: stephan tags: trunk)
09:27
Replace use of Emscripten's Module.postRun() with a custom callback so that we get consistent library init timing with both Emscripten 3.1.x and 4.0.x. Details and discussion are in Emscripten ticket #23420. (check-in: 4863a70ac6 user: stephan tags: trunk)
01:47
When two indexes have the same cost, use the narrower one (the one with the smaller average on-disk row width). (check-in: 398559678f user: drh tags: trunk)
2025-01-15
22:58
Check-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism for inhibiting direct-overflow-read. This check-in fixes the problem. (check-in: f741ffc01e user: drh tags: branch-3.48)
21:13
Check-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism for inhibiting direct-overflow-read. This check-in fixes the problem. (check-in: 113078d555 user: drh tags: trunk)
21:11
Re-enable comment-stripping in the JS dist builds. (check-in: 5decfea379 user: stephan tags: branch-3.48)
21:09
Teach tool/stripccomments.c that a backslash immediately preceeding a forward slash means that that forward slash cannot be the start of a comment. This is intended to allow JavaScript regular expressions containing \/* (like the one introduced in emsdk 4.0.0) to pass through properly. Re-enable comment-stripping in the JS dist builds. (check-in: db21d6cc9d user: stephan tags: trunk)
21:00
Work around a behavior change in emsdk 4.0.0 which breaks the load/init timing of the wasm module. (check-in: c0f0d26331 user: stephan tags: branch-3.48)
20:53
Work around a behavior change in emsdk 4.0.0 which breaks the load/init timing of the wasm module. (check-in: 00a750184b user: stephan tags: trunk)
20:23
When choosing between two indexes with the same cost, pick the one with the smaller predicted number of bytes per row. (Closed-Leaf check-in: d4bd0d4214 user: drh tags: consider-idx-width)
19:30
Variable names and conditional logic simplified in where.c. These changes are cosmetic only and do not affect the resuling machine code. (check-in: dbc2d6a244 user: drh tags: trunk)
15:27
Fix a typo in a wasm makefile var name, noting that this doesn't actually fix anything because the var in question is not used when building 'clean' or 'distclean'. (check-in: 7cfc75a625 user: stephan tags: trunk)
14:31
Disable the C-style comment stripper in the JS dist build, as explained in forum post 529c20d344. (check-in: 76ffc70f13 user: stephan tags: branch-3.48)
14:28
Disable the C-style comment stripper in the JS dist build, as explained in forum post 529c20d344. (check-in: a9475e7614 user: stephan tags: trunk)
13:35
Fix another problem that was causing underestimates of index size. (Later:) Closed this branch as I don't think it is the correct approach to the problem. Maybe I'll change my mind later, but that's the decision for now. (Closed-Leaf check-in: a1690ecd00 user: drh tags: analyze-row-size)
12:45
Have windows SQLITE_ENABLE_SETLK_TIMEOUT builds block indefinitely if the busy-timeout is set to 0x7FFFFFFF. (check-in: daefcafe79 user: dan tags: win32-enable-setlk)
12:38
Fix issues with the prior check-ins on this branch. The code seems to work now, though many tests fail because of the new sqlite_stat1.stat text. (check-in: be26698a5e user: drh tags: analyze-row-size)
00:46
Some bug fixes to the previous. Still lots of bugs remaining. (check-in: 76f2beded0 user: drh tags: analyze-row-size)
00:29
Always include the sz=NNN option in the sqlite_stat1.stat field. (check-in: 9c0d6f29df user: drh tags: analyze-row-size)
2025-01-14
20:47
Change the version number to 3.49.0 to begin the next development cycle. Any patches to 3.48.0 will go on a branch. (check-in: 8165a3d3a4 user: drh tags: trunk)
16:10
Trying to remove a warning from some compiler that I do not have access to. (check-in: bc6de90c70 user: drh tags: trunk)
12:43
Version 3.48.0 for the reuse-schema branch. (check-in: 1a031a536b user: drh tags: reuse-schema)
12:28
Version 3.48.0 for the bedrock branch (check-in: fab341c829 user: drh tags: bedrock)
12:21
Version 3.48.0 for the wal2 branch. (check-in: ef970ef037 user: drh tags: wal2)
12:15
Version 3.48.0 for the begin-concurrent branch. (check-in: 56d110b636 user: drh tags: begin-concurrent)
11:05
Version 3.48.0 (check-in: d2fe6b05f3 user: drh tags: trunk, release, major-release, version-3.48.0)
2025-01-13
13:32
Remove a stray tab character from a comment. (check-in: 315079b150 user: drh tags: trunk)
11:28
GCC 13 has become more quite pedantic about the signature of functions matching the type of pointers through which the functions are called. Make adjustments to extension functions and test procedures to work around this. No changes to the core. (check-in: ed83b79100 user: drh tags: trunk)
2025-01-11
16:28
Fix harmless "implicit fall through" warnings that suddenly appeared when I upgraded to gcc-13. (check-in: 3e2875dac2 user: drh tags: trunk)
14:43
Better job at suppressing harmless scan-build warnings. This time testing and working. (check-in: c847973947 user: drh tags: trunk)
13:59
Fix harmless scan-build warnings. Actually, this fixed nothing. The scan-build warnings persist. I should have tested before I checked in. Look for a follow-up shortly. (check-in: b93af6feb7 user: drh tags: trunk)
09:02
Fix an age-old bug in the lower-level wasm/js helper bits which (A) caused removal of customized WASM func arguments/results conversion to silently fail and (B) triggered a legitimate warning in the Google closure toolchain. Reported in jaccwabyt ticket c5c296e85a7c01360820. (check-in: 99917a5bb0 user: stephan tags: trunk)
2025-01-10
18:03
Update log messages on this branch to say "v=22". Also add log message to slow calls to sqlite3_schema_copy(). (Leaf check-in: b0cd8dfcf9 user: dan tags: cf8f1552-commit-instr)
17:36
Add the experimental sqlite3_schema_copy() API, for copying schemas between database handles. (check-in: 04ea435d24 user: dan tags: cf8f1552-commit-instr)
17:09
Minor updates to schemacopy.test. (Closed-Leaf check-in: 1d544b535f user: dan tags: schema-copy)
15:10
Allow ".testctrl schemacopy 1" in the shell tool on this branch. For testing sqlite3_schema_copy(). (check-in: 1edc2e5590 user: dan tags: schema-copy)
11:34
Update test script wal2big2.test to be less sensitive to PRNG output. (check-in: 2a5e7c5cd6 user: dan tags: schema-copy)
2025-01-09
20:41
Run tests with SQLITE_TESTCTRL_SCHEMACOPY for mdevtest and sdevtest on this branch. (check-in: c25dd2dec5 user: dan tags: schema-copy)
19:57
Update the makefile so that it puts the amalgamation files in a subdirectory in the amalgamation-zip. Forum post b8dd1941e1. (check-in: cef8e88bed user: drh tags: trunk)
19:18
Rationalize and add comments to new code on this branch. (check-in: e1603c9cda user: dan tags: schema-copy)
17:12
Fix minor issues on this branch. Remove unused code. (check-in: c2610bb4be user: dan tags: schema-copy)
14:10
When removing an fts5 in secure-delete mode, defer setting the table version to SECUREDELETE until flushing data to disk. This prevents problems that can occur if there is a rollback or statement rollback operation. (check-in: c359e555ce user: dan tags: trunk)
2025-01-08
20:43
Fix another assert() failure in fts5. (check-in: 6da37893f5 user: dan tags: trunk)
17:16
Fix problem in test code on this branch. (check-in: 05d90f8b28 user: dan tags: schema-copy)
15:54
Fix a crash in fts5 that could occur if shadow tables are modified or removed. (check-in: c0b691095a user: dan tags: trunk)
12:51
Cross-link and otherwise improve the various how-to-compile documents. No code changes. (check-in: 5e6ede92af user: drh tags: trunk)
12:25
In the doc/tcl-extension-testing.md document, provide enhanced explanation for why the tcl library needs to be copied into the install directory. (check-in: cff70c859f user: drh tags: trunk)
10:55
Ensure that integrity-check processes tables in the same order when using a copied schema as it does when using one loaded directly from the db. (check-in: 961af94442 user: dan tags: schema-copy)
2025-01-07
21:04
Fix many problems in the sqlite3_schema_copy() function. (check-in: ac9ca88590 user: dan tags: schema-copy)
18:50
Further refinement to the Tcl extension testing procedure. (check-in: 32b8b078d1 user: drh tags: trunk)
16:36
Improvements to [14b38ae6ab86a314] so that the Tcl interface is better able to work with boolean values in both Tcl86 and Tcl90. (check-in: 4e85343d61 user: drh tags: trunk)
15:39
Fix a memory error in test logic introduced by [8704034254938662]. (check-in: 8a56e98d25 user: drh tags: trunk)
15:00
Typo in the previous check-in. (check-in: 5872d7a0a7 user: drh tags: trunk)
14:55
Enhancements to the Tcl SQLite extension testing procedures so that they install a full-featured SQLite and so that Tcl is build statically so that there is no need to worry with LD_LIBRARY_PATH. (check-in: c8972e652e user: drh tags: trunk)
12:14
Make the TCL extension aware of the booleanString type within TCL. (check-in: 14b38ae6ab user: drh tags: trunk)
11:54
Fix a typo in the previous check-in. (check-in: 7d41885e85 user: drh tags: trunk)
00:17
Minor fixes to tclsqlite.c to promote portability. (check-in: dd934f032f user: drh tags: trunk)
2025-01-06
23:33
Enhance the makefile to make it easier to build from a read-only source tree. (check-in: f99a70eca2 user: drh tags: trunk)
21:36
Fix a problem with tool/mksqlite3h.tcl that prevents it from running out of a read-only check-out. (check-in: cb54f0063e user: drh tags: trunk)
20:39
Implemenation of experimental API sqlite3_schema_copy(), for copying a database schema between connections. More testing to come. (check-in: 65ede04d21 user: dan tags: schema-copy)
20:12
Merge all the latest trunk changes into the reuse-schema branch. (check-in: 3703a84437 user: drh tags: reuse-schema)
18:32
Fix a minor problem with the sqlite3_get_table_printf() test interface. No core changes. (check-in: a0df29c7a3 user: drh tags: trunk)
17:01
Add test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPPLY_FKNOACTION. (check-in: b1cc53fa3f user: dan tags: trunk)
2025-01-05
19:58
Further refactoring of the TCL extension test procedure document, for improved clarity and usability. (check-in: bcdaef4341 user: drh tags: trunk)
17:16
Refactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0 separately, to simplify the procedures and reduce cognative stress on the tester. (check-in: 5281536327 user: drh tags: trunk)
11:40
Fix typo in the tcl-extension-testing.md document. (check-in: 28150c615c user: drh tags: trunk)
11:19
Improvements to TCL extension test procedure description. Improvements to the tclextension-list and tclextension-verify makefile targets to suppress unnecessary output. (check-in: 3e92fea09a user: drh tags: trunk)
2025-01-04
20:50
Improvements to testing and validation of the SQLite TCL extension. (check-in: 9d7597cad4 user: drh tags: trunk)
20:13
Show the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the output of "nmake tcl-env". (check-in: 4270abc071 user: drh tags: trunk)
19:50
Allow the 2nd argument to ".param set" to use previously bound parameters, as suggested by forum post 823e1bd746. (check-in: 13a35ad792 user: drh tags: trunk)
16:30
Fix a problem in the sessions extension allowing changesets containing foreign key violations to be committed under some circumstances. (check-in: e09a0c0229 user: dan tags: trunk)
15:52
Add the document describing test procedures for the TCL extension build process. Update the Windows makefile so that it builds the TCL extensions successfully with a default installation of Tcl8.6. (check-in: 3263db9249 user: drh tags: trunk)
15:51
Adjust the Windows Makefile.msc so that it can build the tclextension with Tcl8.6 successfully. Updates to the tcl-extension test procedure document. (Closed-Leaf check-in: 0c2cdc632f user: drh tags: test-procedures)
14:10
Add new tcl-extension-testing.md document. The Windows side is not yet working. (check-in: 9dc805df1b user: drh tags: test-procedures)
2025-01-03
15:21
Merge the latest trunk enhancements into the reuse-schema branch. (check-in: 3b485202da user: drh tags: reuse-schema)
15:15
Merge the latest trunk enhancements into the bedrock branch. (check-in: 4b9497cffa user: drh tags: bedrock)
15:12
Merge the latest trunk enhancements into the wal2 branch. (check-in: 0992237cd4 user: drh tags: wal2)
15:07
Merge the latest trunk enhancements into the begin-concurrent branch. (check-in: 99293f4f72 user: drh tags: begin-concurrent)
11:51
Add comment to the columnIsGoodIndexCandidate() routine to record the results of a failed experiment. No changes to code. (check-in: 9ee57a30a4 user: drh tags: trunk)
11:22
Avoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro-optimization is not really necessary there. (check-in: 1291b013a8 user: dan tags: trunk)
2025-01-02
21:23
Improve the treeview output for CteUse objects. (check-in: 2b16d6947c user: drh tags: trunk)
18:43
Improvements to the display of subqueries in the FROM clause for treeview output. (Debug and analysis code only - does not affect production builds.) (check-in: 4a2d65cdcd user: drh tags: trunk)
17:56
Close database connections in test/dbpage.test, for Windows. (check-in: 322d255ed8 user: drh tags: trunk)
15:39
Fix recent test cases so that they work even when auto_vacuum defaults to on. (check-in: 41f6e46695 user: drh tags: trunk)
15:27
Add a test case for ROLLBACK TO of database truncate operations made through the sqlite_dbpage vtab. (check-in: eb335beb1e user: dan tags: trunk)
15:03
Improvements to the way that truncation is implemented in sqlite_dbpage(). (check-in: ac4bb2e4ec user: drh tags: trunk)
12:14
Update the build instructions for Windows to note that VS2015 or later is required to avoid the need to install tclsh.exe. (check-in: da0ef0567b user: drh tags: trunk)
2025-01-01
18:18
Fix the tool/omittest.tcl script, broken by [d8c0e0184226bdae]. (check-in: 4f6c36a61c user: drh tags: trunk)
12:24
Fix the vfstrace.c extension so that it supports xFetch and xUnfetch. (check-in: c7132b7e62 user: drh tags: trunk)
Previous month ↓