]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
2 months agoMerge opfs-wl into trunk, not so much for the "opfs-wl" VFS, which is stil tentative...
stephan [Sun, 8 Mar 2026 08:32:22 +0000 (08:32 +0000)] 
Merge opfs-wl into trunk, not so much for the "opfs-wl" VFS, which is stil tentative (working fine but with little perceived benefit), but for the "opfs" VFS cleanups which necessarily happened around it.

FossilOrigin-Name: bcaa876c6dafee0995d239f59b6ce7810b6f5faa219b9c392966211ae3dec17a

2 months agoUpdate the tester1 SEE tests to account for opfs-wl. opfs-wl
stephan [Sun, 8 Mar 2026 08:09:09 +0000 (08:09 +0000)] 
Update the tester1 SEE tests to account for opfs-wl.

FossilOrigin-Name: 616d32c8380ef47c5a7c2eb765e7b6fbec9500d4e16c837f4ee11d71c239a55f

2 months agoRefactor tester1 OPFS test to support both the "opfs" and "opfs-wl" VFSes.
stephan [Sun, 8 Mar 2026 07:58:02 +0000 (07:58 +0000)] 
Refactor tester1 OPFS test to support both the "opfs" and "opfs-wl" VFSes.

FossilOrigin-Name: 17ac8d7bdfaf96510abea8c11019045c1703b7040655d9c4c8d7001636260b50

2 months agoAdd parens around an expression in the CLI shell to account for operator precedence...
stephan [Sun, 8 Mar 2026 07:02:46 +0000 (07:02 +0000)] 
Add parens around an expression in the CLI shell to account for operator precedence, as reported in [forum:856ff7a2f1|forum post 856ff7a2f1].

FossilOrigin-Name: da3ad170aebf57f2202e56673ac149bc51077d126ab5928f1db16492e403d5b9

2 months agoExpose sqlite3_bind_zeroblob() to JS/WASM.
stephan [Sun, 8 Mar 2026 05:53:47 +0000 (05:53 +0000)] 
Expose sqlite3_bind_zeroblob() to JS/WASM.

FossilOrigin-Name: 0c5d4fe0bd322b4c8dbd0800001317a21cd511b00244de74b4db3fd051153879

2 months agoUse the UINT64_C() macro rather than the LLU suffix on integer literals
drh [Sat, 7 Mar 2026 22:37:28 +0000 (22:37 +0000)] 
Use the UINT64_C() macro rather than the LLU suffix on integer literals
for portability to older Microsoft compilers.
[forum:/forumpost/0a9ffaff6fcdedb3|Forum thread 0a9ffaff6fcdedb3].

FossilOrigin-Name: 27be26566fdb4d01c44dc111f1c18c835797de0990d4fcc876e91edc216e9e93

2 months agoGive the fuzzcheck test program access to all the same extensions that
drh [Sat, 7 Mar 2026 21:07:18 +0000 (21:07 +0000)] 
Give the fuzzcheck test program access to all the same extensions that
dbsqlfuzz has access to.

FossilOrigin-Name: d9c23b49e355233bbfcdc8305dcae21640e66a0bbf1daed0dd3f9d132c1ef69f

2 months agoFix harmless compiler warnings on Windows.
drh [Sat, 7 Mar 2026 17:50:32 +0000 (17:50 +0000)] 
Fix harmless compiler warnings on Windows.

FossilOrigin-Name: 358d78da75033d4d1fcb27b5f95c940dcc306cdf34ef999262da901e71f2b306

2 months agoMinor typo fixes from [forum:8fc8bc34291d6f45|forum post 8fc8bc34291d6f45].
stephan [Sat, 7 Mar 2026 15:15:37 +0000 (15:15 +0000)] 
Minor typo fixes from [forum:8fc8bc34291d6f45|forum post 8fc8bc34291d6f45].

FossilOrigin-Name: c8fb88c19ed91dc5e205f719aedb895f7ceb62b113f61ec94cc6e435051da15c

2 months agoAn attempt to get the CLI build to work with mingw32.
drh [Sat, 7 Mar 2026 12:00:56 +0000 (12:00 +0000)] 
An attempt to get the CLI build to work with mingw32.
[forum:/forumpost/086cb1ef66|Forum post 086cb1ef66].

FossilOrigin-Name: d95b9e7c1746b9cbd067aa65806b1f74d0dfe77ab6084cb3da9ef2242cac9134

2 months agoFix another memory leak following OOM in the decimal extension.
drh [Sat, 7 Mar 2026 11:23:11 +0000 (11:23 +0000)] 
Fix another memory leak following OOM in the decimal extension.

FossilOrigin-Name: 414f6dbc09c2a3cf04ccdfd8f11eecb7ef781facff979ae4236a452913001391

2 months agoExtend the JS pre-bootstrapping configuration to include an option to disable inclusi...
stephan [Sat, 7 Mar 2026 06:10:29 +0000 (06:10 +0000)] 
Extend the JS pre-bootstrapping configuration to include an option to disable inclusion of any given extension VFS (not the default VFSes, like memdb). The primary motivation for this is to give people who don't use OPFS to a way to keep the OPFS VFSes from loading their proxy workers, which are expensive.

FossilOrigin-Name: 9a07eb7a941479510891d1444aacbeb440efaad3e9a13f186833618d8b60a8da

2 months agoFix the mangling of the opfs async proxy script's URI caused by both OPFS VFSes modif...
stephan [Sat, 7 Mar 2026 04:19:08 +0000 (04:19 +0000)] 
Fix the mangling of the opfs async proxy script's URI caused by both OPFS VFSes modifying it to accound for sqlite3.dir. Add a link to speedtest1 with opfw-wl to index.html.

FossilOrigin-Name: c1cb61f473a11a325ef421ba8edfb20257203688565f7db62309044be183af5f

3 months agoCleanups and docs in the opfs vfs and its concurrency tester. Experimentally add...
stephan [Sat, 7 Mar 2026 03:32:17 +0000 (03:32 +0000)] 
Cleanups and docs in the opfs vfs and its concurrency tester. Experimentally add sqlite3.capi.sqlite3_js_retry_busy(), which runs a callback repeatedly until it _stops_ returning (or throwing) an SQLITE_BUSY error.

FossilOrigin-Name: 45c02ed21635f7ef45214ab5ec6230b6b8bd89e35ef5889db318523e1c679fea

3 months agoElide more of the 64-bit was stuff from the default build target.
stephan [Sat, 7 Mar 2026 03:29:26 +0000 (03:29 +0000)] 
Elide more of the 64-bit was stuff from the default build target.

FossilOrigin-Name: 3b74ad9081daee560bf9b400e69a75abcc62dae7c5f55dcf46de84daae50ed9f

3 months agoEnhancements and fixes to some of the extensions used in the CLI so that
drh [Sat, 7 Mar 2026 02:42:27 +0000 (02:42 +0000)] 
Enhancements and fixes to some of the extensions used in the CLI so that
they can be fuzzed using dbsqlfuzz.

FossilOrigin-Name: d800ea06d231957cf571327d9eaf81564d5439aeee099987101050a41f9676c0

3 months agoThe optional SQLITE_DECIMAL_MAX_DIGIT compile-time option limits the extfunc-fuzz
drh [Sat, 7 Mar 2026 02:36:39 +0000 (02:36 +0000)] 
The optional SQLITE_DECIMAL_MAX_DIGIT compile-time option limits the
maximum number of digits that the decimal extension will operate on.

FossilOrigin-Name: 4214485b2fe4b95d9440008158d458b4b957a111f201965de1a518623589fd79

3 months agoCleanups and docs in the new opfs code structure.
stephan [Sat, 7 Mar 2026 02:19:23 +0000 (02:19 +0000)] 
Cleanups and docs in the new opfs code structure.

FossilOrigin-Name: 3b470c4c7a1fcc710e6b9eae32134c7f6c3f6008b24c7351257f66f5e8f70311

3 months agoFor backwards compatibility, ensure that the "opfs" VFS does not specifically require...
stephan [Sat, 7 Mar 2026 01:01:13 +0000 (01:01 +0000)] 
For backwards compatibility, ensure that the "opfs" VFS does not specifically require Atomics.waitAsync() (a new requirement of "opfs-wl"), but make use of it if available. Only apply jitter to the concurrency test runs at random intervals.

FossilOrigin-Name: f2175f526c00cfe562e8f332eb197b5ef2c3d6be1fff2aab1566c2c533a293ac

3 months agoReenable the is_base85() extension function that was disabled
drh [Sat, 7 Mar 2026 00:14:36 +0000 (00:14 +0000)] 
Reenable the is_base85() extension function that was disabled
by [af18b68978ec9b1f].

FossilOrigin-Name: be07c16e3a7d28b95bea4b987a880d5b4b2b44d9a31ac5b48caa5b6c6dc5bec3

3 months agoFix another NULL ptr deref following OOM in the sha1 extension.
drh [Sat, 7 Mar 2026 00:10:34 +0000 (00:10 +0000)] 
Fix another NULL ptr deref following OOM in the sha1 extension.

FossilOrigin-Name: c4843e4cce71acb1e3743c45e0ee8cf62e91c39b57cec4f356bf7a4a10f81352

3 months agoFix a NULL pointer dereference following OOM in the sha1 extension.
drh [Sat, 7 Mar 2026 00:03:47 +0000 (00:03 +0000)] 
Fix a NULL pointer dereference following OOM in the sha1 extension.

FossilOrigin-Name: 530b3f97ca4e8b1d263266855743b0d57d048104a6c3bed6c4d7958985767bc6

3 months agoFix a NULL pointer dereference following OOM in the decimal extension.
drh [Fri, 6 Mar 2026 23:58:58 +0000 (23:58 +0000)] 
Fix a NULL pointer dereference following OOM in the decimal extension.

FossilOrigin-Name: de37f30b2100e0c249e5c0853d6af90cd3c2069899747dcf0889e6a3d6b94061

3 months agoFix a memory leak following OOM in the completion extension.
drh [Fri, 6 Mar 2026 23:56:03 +0000 (23:56 +0000)] 
Fix a memory leak following OOM in the completion extension.

FossilOrigin-Name: ff5b1efbf80875a82b3707b56440551eb6f68a899ade27363bc62872fe46fd75

3 months agoAdd some jitter and duration info to the opfs concurrency tester. Ensure that Atomics...
stephan [Fri, 6 Mar 2026 23:50:44 +0000 (23:50 +0000)] 
Add some jitter and duration info to the opfs concurrency tester. Ensure that Atomics.waitAsync() is available for opfs-wl. Further testing has shown that Web opfs-wl is consistently fairer about doling out contested locks but it's dog slow compared to the original VFS under moderate concurrency. In single-connection use they're effectively on par.

FossilOrigin-Name: a9aecc987512d60f2663973f43c769cf086fc14149edfbcb18c0aec9f5aa3dbf

3 months agoFix a memory leak in the decimal extension that follows an OOM.
drh [Fri, 6 Mar 2026 23:37:45 +0000 (23:37 +0000)] 
Fix a memory leak in the decimal extension that follows an OOM.

FossilOrigin-Name: 8d59e47e7ae0aae01cb25c6c054cf9a4d9651e858bc0dd1a0e2a013ec6579012

3 months agoGet "opfs" and "opfs-wl" properly split. Speedtest1 and the concurrency tester are...
stephan [Fri, 6 Mar 2026 22:21:06 +0000 (22:21 +0000)] 
Get "opfs" and "opfs-wl" properly split. Speedtest1 and the concurrency tester are happy with opfs-wl but it is not yet plugged in to tester1.

FossilOrigin-Name: 12dcd5425967b6306f3e3178babeac130962edb78e6298d545a429a1a20457cc

3 months agoRename the initializer functions for base64() and base85() to include the
drh [Fri, 6 Mar 2026 22:09:39 +0000 (22:09 +0000)] 
Rename the initializer functions for base64() and base85() to include the
number at the end.

FossilOrigin-Name: af18b68978ec9b1ff732505bfb92bb65e4f7381b904123f42c638b747569fa28

3 months agoIncrease the version number to 3.52.1.
drh [Fri, 6 Mar 2026 21:34:49 +0000 (21:34 +0000)] 
Increase the version number to 3.52.1.

FossilOrigin-Name: 94a650b169bfd1056995c1cfe584d3d92667bce5e9cf93e6381607ed87251bf3

3 months agoFix a NULL pointer dereference in the (undocumented) two-argument version
drh [Fri, 6 Mar 2026 21:31:07 +0000 (21:31 +0000)] 
Fix a NULL pointer dereference in the (undocumented) two-argument version
of the decimal() extension SQL function.
[forum:/forumpost/fa9c2dc83f|Forum post fa9c2dc83f].

FossilOrigin-Name: a0266351df8700383d50c2ef2d179dd82b0e0fd7fc70d05a91d5e4e845983b46

3 months agoSmall typo fix in the FP_DIGITS API docs.
stephan [Fri, 6 Mar 2026 19:39:03 +0000 (19:39 +0000)] 
Small typo fix in the FP_DIGITS API docs.

FossilOrigin-Name: 0286f97f34fd560d4ba423bd28d18ac080c918b0e99b8d16c4a213cf205b5e5b

3 months agoMinor cleanups and docs. Teach the OPFS concurrency tester to deal with SQLITE_BUSY...
stephan [Fri, 6 Mar 2026 19:33:25 +0000 (19:33 +0000)] 
Minor cleanups and docs. Teach the OPFS concurrency tester to deal with SQLITE_BUSY instead of failing.

FossilOrigin-Name: 247ffed141f66a6a5a396a3e002995a9f00c70333271199200530066e77956c4

3 months agoMerge fixes that were deferred until after the 3.52.0 release, including:
drh [Fri, 6 Mar 2026 18:51:49 +0000 (18:51 +0000)] 
Merge fixes that were deferred until after the 3.52.0 release, including:
(1) Fix handling of DISTINCT with OUTER JOIN, (2) Enhance configure to
auto-detect linenoise, (3) Add recent configuration settings to WASM.

FossilOrigin-Name: 9d51bec1b17925f5cac0d590c0d70bb34e77fdb7253d18007f52711d42f6f5d0

3 months agoFix the linenoise auto-detection added by the previous check-in. pending-3.52
drh [Fri, 6 Mar 2026 18:26:50 +0000 (18:26 +0000)] 
Fix the linenoise auto-detection added by the previous check-in.

FossilOrigin-Name: e36958584511d83666590abef223c2edc3da15b5b32e280baf08159ddae80e50

3 months agoThis one reliably runs 5 workers. Checking in before subsequent cleanups and debug...
stephan [Fri, 6 Mar 2026 17:10:28 +0000 (17:10 +0000)] 
This one reliably runs 5 workers. Checking in before subsequent cleanups and debug output removal break it.

FossilOrigin-Name: ba81d95febc5fd0f9bbb2685fef5b1b10f9991751f2bdfafba80c15877af1cef

3 months agoCorrect an internal doc falsehood.
stephan [Fri, 6 Mar 2026 16:15:32 +0000 (16:15 +0000)] 
Correct an internal doc falsehood.

FossilOrigin-Name: 53aa080e357d7a2ffeab68a3584fda43d51ecef3dc8a1d46dd32392ae4f9740c

3 months agoThis Web Lock impl can reliably run a single OPFS connection but rather unreliably...
stephan [Fri, 6 Mar 2026 16:04:21 +0000 (16:04 +0000)] 
This Web Lock impl can reliably run a single OPFS connection but rather unreliably 'loses' workers with higher counts, presumably due to deadlock or deadly embrace (how _all_ of them can deadlock at once is unclear, but clearly a bug).

FossilOrigin-Name: d4e8583e2e80665adfe4e814adb6c219936af1dcac4105795045cb1a7b1e4864

3 months agoVersion 3.52.0 version-3.52.0
drh [Fri, 6 Mar 2026 16:01:44 +0000 (16:01 +0000)] 
Version 3.52.0

FossilOrigin-Name: 557aeb43869d3585137b17690cb3b64f7de6921774daae9e56403c3717dceab6

3 months agoExpose SQLITE_{DBCONFIG_FP_DIGITS,LIMIT_PARSER_DEPTH,PREPARE_FROM_DDL} to WASM and... wasm-post-3.52
stephan [Fri, 6 Mar 2026 15:41:17 +0000 (15:41 +0000)] 
Expose SQLITE_{DBCONFIG_FP_DIGITS,LIMIT_PARSER_DEPTH,PREPARE_FROM_DDL} to WASM and add support for DBCONFIG_FP_DIGITS to the variadic wrapper for sqlite3_db_config(). These unfortunately went overlooked before the 3.52 release.

FossilOrigin-Name: 837069635e53849cbca0aa876bad7c7ff44e17578ae492e07acf354067b7e16d

3 months agoAdd the new realpath() extension function to the list of functions
drh [Fri, 6 Mar 2026 14:33:12 +0000 (14:33 +0000)] 
Add the new realpath() extension function to the list of functions
prohibited in --safe mode of the CLI.

FossilOrigin-Name: 5fa49c4d592778fb82c4e25c77cf0442d3dc23cc7f8d91d25952c722af866930

3 months agoRemove an extraneous OPFS metrics increment.
stephan [Fri, 6 Mar 2026 11:49:36 +0000 (11:49 +0000)] 
Remove an extraneous OPFS metrics increment.

FossilOrigin-Name: bf3548a37712e848c7a9cadfdc1669a2be572ea0a0c28d84c157ab30f8c30c44

3 months agoUninstall faultsim at the end of the walrestart.test script.
dan [Fri, 6 Mar 2026 11:18:12 +0000 (11:18 +0000)] 
Uninstall faultsim at the end of the walrestart.test script.

FossilOrigin-Name: 798905a1277ecb17245f2a7378fdc8dc608374fde50bdfe44d09195a7c78cb5c

3 months agoA slight simplification/optimization in the OPFS proxy's waitLoop().
stephan [Fri, 6 Mar 2026 09:11:47 +0000 (09:11 +0000)] 
A slight simplification/optimization in the OPFS proxy's waitLoop().

FossilOrigin-Name: 521bb140b7ed237c118ac9094732d06907229a6ff385502e850c679bd623fd58

3 months agoReimplement the OPFS async proxy's wait-forever loop to be more async-friendly for...
stephan [Fri, 6 Mar 2026 09:06:24 +0000 (09:06 +0000)] 
Reimplement the OPFS async proxy's wait-forever loop to be more async-friendly for upcoming changes.

FossilOrigin-Name: fd775772fbb50b04c8c37977b90a708784eefed403e3668196c9d95559d3a5e1

3 months agoFix the build for -DSQLITE_OMIT_FLOATING_POINT.
drh [Thu, 5 Mar 2026 18:28:43 +0000 (18:28 +0000)] 
Fix the build for -DSQLITE_OMIT_FLOATING_POINT.

FossilOrigin-Name: f41b9ad98c474755c6701eb6ab3dc9864ace9b52a81581f73ca0912cedbc3c37

3 months agoEnhance ./configure to automatically detect linenoise in ../linenoise
drh [Thu, 5 Mar 2026 18:16:25 +0000 (18:16 +0000)] 
Enhance ./configure to automatically detect linenoise in ../linenoise
relative to the build directory, or ../linenoise relative to the source
directory, or at $HOME/linenoise.

FossilOrigin-Name: eb6b47c667e52d5c8682d650dbd114c08d2ecce4bb7bce6fdf2589d1ea09f5c0

3 months agoEnsure xMutexInit() is called in SQLITE_THREAD_MISUSE_WARNINGS builds.
dan [Thu, 5 Mar 2026 16:23:04 +0000 (16:23 +0000)] 
Ensure xMutexInit() is called in SQLITE_THREAD_MISUSE_WARNINGS builds.

FossilOrigin-Name: ac6a389e09a0de1b622af4a7136dc66875e8009c27950f2260a96f17fec4f9bc

3 months agoFix a long-standing problem with DISTINCT LEFT JOIN queries.
dan [Thu, 5 Mar 2026 14:39:27 +0000 (14:39 +0000)] 
Fix a long-standing problem with DISTINCT LEFT JOIN queries.

FossilOrigin-Name: f43294a5582b540a33c584ec8c69b6a5006a4d243ad5cf36125b2b0806e3518b

3 months agoStrip the opfs-wl "back to formula", removing the current false starts so that this...
stephan [Thu, 5 Mar 2026 11:51:27 +0000 (11:51 +0000)] 
Strip the opfs-wl "back to formula", removing the current false starts so that this can be tried again without tripping over any cruft. The current impl is subject, with no obvious way out of it, to starvation in the async proxy.

FossilOrigin-Name: d022f1f5e74dedae044801330eb099022498f359f408e69b3574885641b312f5

3 months agoThe opfs-wl lock hang has been traced to starvation between the WebLock and the tight...
stephan [Thu, 5 Mar 2026 06:30:57 +0000 (06:30 +0000)] 
The opfs-wl lock hang has been traced to starvation between the WebLock and the tight wait-on-VFS-calls Atomics.wait() loop. This can reportedly be resolved with another level of indirection in which the WebLock takes over the wait-on-VFS-calls part until it's unlocked, returning to the global loop when it's done. That exceeds this morning's ambitions but is next to try out.

FossilOrigin-Name: 113bd910e12fea17f9f4a0a3baf706f15627c08cfa6b47a960a83eee761ef4dd

3 months agoAdd a little flexibility to checkpoint sizes in the walrestart.test script.
drh [Thu, 5 Mar 2026 00:30:05 +0000 (00:30 +0000)] 
Add a little flexibility to checkpoint sizes in the walrestart.test script.

FossilOrigin-Name: e438b564ca84377746464034d770e9c1f5899d935c6a4dffc546acb92afb800e

3 months agoAdd some debugging output to opfs and track down the breakage to the initial WebLock...
stephan [Wed, 4 Mar 2026 21:16:36 +0000 (21:16 +0000)] 
Add some debugging output to opfs and track down the breakage to the initial WebLock request, which is never reaching its callback. Still broken, but this is progress.

FossilOrigin-Name: 62fc8b35aeec75f5648b3daa24162c638999d447aa874bdfcbac1431c5c97b6f

3 months agoGet opfs-wl plugged in to the concurrency tester. Somewhat ironically, all competing...
stephan [Wed, 4 Mar 2026 20:33:21 +0000 (20:33 +0000)] 
Get opfs-wl plugged in to the concurrency tester. Somewhat ironically, all competing workers fail with locking errors while worker 1 is busy running off the rails somewhere. Stashing for closer investigation later.

FossilOrigin-Name: 3b27310aa29ea84f459974981a600301abac5c705029a289d3872ecacf231da3

3 months agoConsolidate the last 200 lines of common OPFS VFS code. "opfs" still works, "opfs...
stephan [Wed, 4 Mar 2026 19:21:09 +0000 (19:21 +0000)] 
Consolidate the last 200 lines of common OPFS VFS code. "opfs" still works, "opfs-wl" registers fine but is still otherwise untested.

FossilOrigin-Name: 5978ee4902e4223fed6b95bd2d8f489bb300af8b762650e7113d1f3e97519d88

3 months agoFactor out about 300 lines of common OPFS VFS bootstrapping code.
stephan [Wed, 4 Mar 2026 17:54:02 +0000 (17:54 +0000)] 
Factor out about 300 lines of common OPFS VFS bootstrapping code.

FossilOrigin-Name: 57adecbab71795b62b1c2e4570ff504f35681e81dd8c94f78ad8e05ef39d36fd

3 months agoConsolidate the OPFS VFS's metrics-tracking code.
stephan [Wed, 4 Mar 2026 16:30:51 +0000 (16:30 +0000)] 
Consolidate the OPFS VFS's metrics-tracking code.

FossilOrigin-Name: b71c79ef9672c77a72a976ffcd7cbebfaf0ff314dff97b274f7d092de6a7773f

3 months agoBaby steps in consolidating common OPFS VFS code.
stephan [Wed, 4 Mar 2026 14:33:33 +0000 (14:33 +0000)] 
Baby steps in consolidating common OPFS VFS code.

FossilOrigin-Name: b0dd23299e97ff975f213cb3a8b051f4d7b785b29def82e01f53427fdf77ecb6

3 months agoRemove dead (commented-out) code that came to my attention because it
drh [Wed, 4 Mar 2026 13:08:14 +0000 (13:08 +0000)] 
Remove dead (commented-out) code that came to my attention because it
ws nearby the fix of the previous check-in.

FossilOrigin-Name: 61f8a28591a833b1f5834a347feefeba8414fecc7ff154f1b6ef19963f181812

3 months agoFix a code-generator bug introduced by the UNION/INTERSECT/EXISTS
drh [Wed, 4 Mar 2026 13:02:08 +0000 (13:02 +0000)] 
Fix a code-generator bug introduced by the UNION/INTERSECT/EXISTS
optimization of check-in [132ba781b031972c] and reported in
[forum:/forumpost/2026-03-04T05:06:26Z|forum post 2026-03-04T05:06:26Z].

FossilOrigin-Name: 6ba7797cac7dc873b62a12be5712511c9199b379342dac4a1887bfd65227a298

3 months agoConsolidate much of the OPFS utility code into a new file for use by two of the OPFS...
stephan [Wed, 4 Mar 2026 11:37:39 +0000 (11:37 +0000)] 
Consolidate much of the OPFS utility code into a new file for use by two of the OPFS VFSes.

FossilOrigin-Name: db19a6e9663c3a44996178cb8c35dc4ccd60f48cb4b81b6c214411a56c57def7

3 months agoA potential fix for the probable breakage of bundler-friendly builds in the previous...
stephan [Wed, 4 Mar 2026 00:48:03 +0000 (00:48 +0000)] 
A potential fix for the probable breakage of bundler-friendly builds in the previous check-in. Pending review from someone who uses those tools.

FossilOrigin-Name: 8ea85776116521526d684f221d67e288126e62931d4a0ea7fc7f164cd2d5b2ec

3 months agoopfs-wl is now loading and registering but it's still untested.
stephan [Wed, 4 Mar 2026 00:37:55 +0000 (00:37 +0000)] 
opfs-wl is now loading and registering but it's still untested.

FossilOrigin-Name: 9a471f7491a371052bf1785098ba966dd0d03503e7d8b9fbcd65f07b038e5021

3 months agoAn initial attempt to plugging opfs-wl into the build but its initial handshake with...
stephan [Tue, 3 Mar 2026 23:43:40 +0000 (23:43 +0000)] 
An initial attempt to plugging opfs-wl into the build but its initial handshake with the async half collides with the opfs VFS's handshake, causing bootstrapping to fail miserably. We'll need to either devise a handshake which can differentiate between the two instances or we'll need to preprocess sqlite3-opfs-async-proxy into two copies. Move the (now) three copies of some common code shared by the opfs pieces into a preprocessor #include.

FossilOrigin-Name: 1e0b72631aecb0bb72f4089116da221e6c4abf962db589de08132cd52c2be0e2

3 months agoAdd a missing reset of the lock handshake SharedArrayBuffer slot.
stephan [Tue, 3 Mar 2026 21:46:44 +0000 (21:46 +0000)] 
Add a missing reset of the lock handshake SharedArrayBuffer slot.

FossilOrigin-Name: 5910ed7ac843aa1fdb103ddcfaf6270d12cb39199205fc0b9f721fbf7fa2f851

3 months agoImplementations of WebLock-based opfs::xLock() and xUnlock(). Still completely untest...
stephan [Tue, 3 Mar 2026 21:07:46 +0000 (21:07 +0000)] 
Implementations of WebLock-based opfs::xLock() and xUnlock(). Still completely untested and not yet integrated into the build.

FossilOrigin-Name: 3343e3aabe465f4ab91dd148dfc5a60346e9afb560c10d1f92aeae98763ec3ce

3 months agoAvoid an obscure race condition between a checkpointer and a writer wrapping around...
dan [Tue, 3 Mar 2026 19:43:19 +0000 (19:43 +0000)] 
Avoid an obscure race condition between a checkpointer and a writer wrapping around to the start of the wal file.

FossilOrigin-Name: 7168988acbec2d8d51106a263e553f8942b8b23d983dbbe5028e0f9be68cbb83

3 months agoMerge trunk into the opfs-wl branch.
stephan [Tue, 3 Mar 2026 18:34:59 +0000 (18:34 +0000)] 
Merge trunk into the opfs-wl branch.

FossilOrigin-Name: 81bc4b3b6abc19f98d1f3b1065c4b39a42620a0d7abebe98605dca62dd2d6f9a

3 months agoDo not run test script walrestart.test with the "memsubsys1" permutation. wal-restart-fix
dan [Tue, 3 Mar 2026 18:34:38 +0000 (18:34 +0000)] 
Do not run test script walrestart.test with the "memsubsys1" permutation.

FossilOrigin-Name: 703cbb0f760515eac1e6f72a5e5cd928258c71378e4a976082b6518c90128135

3 months agoMinor tweaks to the previous, for testability.
drh [Tue, 3 Mar 2026 18:21:22 +0000 (18:21 +0000)] 
Minor tweaks to the previous, for testability.

FossilOrigin-Name: decb69015457b4f70cf574aeef87d40f9de60b94965f4a915e8d0cd7559ef2ae

3 months agoAvoid an obscure race condition between a checkpointer and a writer wrapping around...
dan [Tue, 3 Mar 2026 17:34:01 +0000 (17:34 +0000)] 
Avoid an obscure race condition between a checkpointer and a writer wrapping around to the start of the wal file.

FossilOrigin-Name: 053bd3930f827156fd67ea4546a36227cffbb6f8bada3b5d1a7cf5f1867ac624

3 months agoAdd JS tests for sqlite3_bind_zeroblob(). wasm-zeroblob
stephan [Tue, 3 Mar 2026 14:13:34 +0000 (14:13 +0000)] 
Add JS tests for sqlite3_bind_zeroblob().

FossilOrigin-Name: 0473eeb3cefa1d7882375e3f89d239d570649349c5a0a8ddd90b0a336a9bb493

3 months agoExpose sqlite3_bind_zeroblob() to JS/WASM, per request in [forum:e7acf225f9|forum...
stephan [Tue, 3 Mar 2026 01:48:18 +0000 (01:48 +0000)] 
Expose sqlite3_bind_zeroblob() to JS/WASM, per request in [forum:e7acf225f9|forum post e7acf225f9]. This is currently missing tests and is not planned for merge until the 3.53 dev cycle starts.

FossilOrigin-Name: b0c2ef6046b53b6133fed6a890d2ab5e47eeebd7b0b32849b5f69ae54a03014c

3 months agoConvert many sqlite3_realloc() calls to sqlite3_realloc64().
drh [Mon, 2 Mar 2026 17:11:44 +0000 (17:11 +0000)] 
Convert many sqlite3_realloc() calls to sqlite3_realloc64().

FossilOrigin-Name: 88dce64242552e7443d9fb496f6f3ad71dc5b4a882ce21b7ef1d5ea4e26f1e61

3 months agoOmit explain_i calls from TCL test scripts.
drh [Mon, 2 Mar 2026 16:40:16 +0000 (16:40 +0000)] 
Omit explain_i calls from TCL test scripts.

FossilOrigin-Name: 204f25c882832058c3291d4d6a0a6ac2711c081cb91b19feb2cf94a25ed61ecf

3 months agoFix TEMP INSTEAD OF triggers so that they work on TEMP views.
drh [Mon, 2 Mar 2026 15:34:16 +0000 (15:34 +0000)] 
Fix TEMP INSTEAD OF triggers so that they work on TEMP views.
[forum:/forumpost/2026-02-28T23:33:04z|Forum post 2026-02-28T23:33:04z].

FossilOrigin-Name: 0596bd508f0bc548158858a1dc113af2235d02632ce8c41cd27d1029e1a7e48d

3 months agoChange some sqlite3_realloc() calls into sqlite3_realloc64(). realloc64
drh [Mon, 2 Mar 2026 15:06:59 +0000 (15:06 +0000)] 
Change some sqlite3_realloc() calls into sqlite3_realloc64().

FossilOrigin-Name: a391f5646926787fd9a004225ea406b61d20f282c852c0282fd26cada644b601

3 months agoRemove the experimental and incomplete ext/repair extension, to prevent AIs
drh [Mon, 2 Mar 2026 13:44:04 +0000 (13:44 +0000)] 
Remove the experimental and incomplete ext/repair extension,  to prevent AIs
from scanning the (incomplete) code and reporting bugs against it.

FossilOrigin-Name: 213b1c6608af4b3e9d6e0d8de6432cc6857931427baf4beac1e0a4294e4dc6ce

3 months agoDisable test shell1-5.0 as it is causing a use of initialized deep inside
drh [Mon, 2 Mar 2026 13:43:08 +0000 (13:43 +0000)] 
Disable test shell1-5.0 as it is causing a use of initialized deep inside
of TCL.

FossilOrigin-Name: 440bd6091e3767f0a2f42ffdc92ca5e4736c0a73324fdd15397c3b5dbbc31fb8

3 months agoUse only 64-bit memory allocation in FTS5. Fix for UAF reported by
drh [Mon, 2 Mar 2026 11:41:48 +0000 (11:41 +0000)] 
Use only 64-bit memory allocation in FTS5.  Fix for UAF reported by
Zijie Zhao.

FossilOrigin-Name: e8976d5041c929675772039b7a8fc4ff0b609537d86f9aa6e445ecd512a10673

3 months agoFix a possible 9-byte buffer overread in the zipfile extension hit when processing...
dan [Mon, 2 Mar 2026 11:22:28 +0000 (11:22 +0000)] 
Fix a possible 9-byte buffer overread in the zipfile extension hit when processing a corrupt zip file. Forum post [forum:/forumpost/721a05d2c5 | 721a05d2c5].

FossilOrigin-Name: 5db21813d126554d80db903be6d36ab6c1f73f9135a54af6dcfcfce0bcc18e68

3 months agoThe intck01.sql test should only be run if virtual tables work.
drh [Mon, 2 Mar 2026 00:06:02 +0000 (00:06 +0000)] 
The intck01.sql test should only be run if virtual tables work.

FossilOrigin-Name: 641d6f31a7f7b4901061e24d4e624da5ed92282e79771bb019b82a882e5d1ae9

3 months agoMore floating point conversion test cases.
drh [Sun, 1 Mar 2026 23:23:52 +0000 (23:23 +0000)] 
More floating point conversion test cases.

FossilOrigin-Name: 44a736a700ab12b398873400dc06cd334817842b4fa08bf8070a9ad6dbff0b51

3 months agoNew floating-point test case.
drh [Sun, 1 Mar 2026 23:01:17 +0000 (23:01 +0000)] 
New floating-point test case.

FossilOrigin-Name: f353399932e9797198e635405a594c2987850070e3f9aee87a05c5a65d4c1e00

3 months agoFix an OOB read in the incremental integrity-check extension.
drh [Sun, 1 Mar 2026 22:36:02 +0000 (22:36 +0000)] 
Fix an OOB read in the incremental integrity-check extension.

FossilOrigin-Name: abecc8e388e294311aa0b572e0a984b8ddad2afbf829c1246e1682fa549c8fac

3 months agoSimplified rounding logic in sqlite3Fp10Convert2().
drh [Sun, 1 Mar 2026 20:22:08 +0000 (20:22 +0000)] 
Simplified rounding logic in sqlite3Fp10Convert2().

FossilOrigin-Name: 8ac63ebc5c04ba555bbf0d878a70e25deba5fcc75ff44c464600b92c27e5dcb0

3 months agoCode changes in sqlite3Fp10Convert2() for easier maintenance. Does not
drh [Sat, 28 Feb 2026 20:22:10 +0000 (20:22 +0000)] 
Code changes in sqlite3Fp10Convert2() for easier maintenance.  Does not
affect the generated machine code.

FossilOrigin-Name: 21c8fc7100e23b632b77934cbbafb98dfd3e6e73bab702446ef6345b378c9d36

3 months agoImprovements to power-of-ten computations used for text ↔ binary64
drh [Fri, 27 Feb 2026 22:59:46 +0000 (22:59 +0000)] 
Improvements to power-of-ten computations used for text ↔ binary64
conversions.

FossilOrigin-Name: 0780bce854b962fb2d4a1a19c55c9b5790a9669f26e1ff8b5f1f1733cfc647e0

3 months agoMinor simplification to the text→binary64 conversion algorithm.
drh [Fri, 27 Feb 2026 20:37:03 +0000 (20:37 +0000)] 
Minor simplification to the text→binary64 conversion algorithm.

FossilOrigin-Name: 6632d51f1673e9a6b6e26baebc7aaa1ae27024ad5db1baff6ee5fcf865099f43

3 months agoTwo code comment typo fixes reported in the forum. No code changes.
stephan [Fri, 27 Feb 2026 18:32:12 +0000 (18:32 +0000)] 
Two code comment typo fixes reported in the forum. No code changes.

FossilOrigin-Name: 3fbd28fabc5509a0bf2026cb60891d6d3efe251910baa3a3934225d0a7187bfa

3 months agoFix an off-by-one error in the indentation of multi-line outputs in
drh [Fri, 27 Feb 2026 13:25:42 +0000 (13:25 +0000)] 
Fix an off-by-one error in the indentation of multi-line outputs in
QRF_STYLE_Line mode.

FossilOrigin-Name: d47499b21c893cc8749a1cafe1cf712dacfeaa6cfe2cdb75d1fc450f3cb6879f

3 months agoAdd an assert() to sqlite3RegisterLikeFunctions() to hopefully prevent
drh [Fri, 27 Feb 2026 11:36:43 +0000 (11:36 +0000)] 
Add an assert() to sqlite3RegisterLikeFunctions() to hopefully prevent
future false-positive bug reports coming out of CodeQL.

FossilOrigin-Name: 7c5f4dcd748baa60097bbf68d7aca99cc959bb1f7da92bd9ad86a4425a37d391

3 months agoAnother nano-optimization in kvvfs v2.
stephan [Fri, 27 Feb 2026 06:33:28 +0000 (06:33 +0000)] 
Another nano-optimization in kvvfs v2.

FossilOrigin-Name: a9d60190d693504742a894918f145111908d7d6cb9e853ba7a2356529046372a

3 months agoJS: slight performance improvements in KVVfsStorage.
stephan [Fri, 27 Feb 2026 03:21:47 +0000 (03:21 +0000)] 
JS: slight performance improvements in KVVfsStorage.

FossilOrigin-Name: 56edf2addb155dbb60269fe563ecb5f6132672c6c61f6f9d18ebdff72111298d

3 months agoAn initial copy/paste stub for experimenting with using WebLocks for a new copy of...
stephan [Fri, 27 Feb 2026 03:11:40 +0000 (03:11 +0000)] 
An initial copy/paste stub for experimenting with using WebLocks for a new copy of the OPFS vfs. This is not yet functional, or even loading, but needs stashing to avoid potential loss.

FossilOrigin-Name: 372f18ae909bafd7167b70051935832e3107ede72aaeccbf5c042db7ba791912

3 months agoFix typos in the SQLITE_PREPARE_FROM_DDL documentation.
drh [Thu, 26 Feb 2026 16:19:21 +0000 (16:19 +0000)] 
Fix typos in the SQLITE_PREPARE_FROM_DDL documentation.

FossilOrigin-Name: 9174e7dacf867c1f80e73ccf5e0ee7b9e84fbe9f2e53559d06b72206b1cde3c6

3 months agoImprovements to the SQLITE_PREPARE_FROM_DDL documentation.
drh [Thu, 26 Feb 2026 13:35:38 +0000 (13:35 +0000)] 
Improvements to the SQLITE_PREPARE_FROM_DDL documentation.

FossilOrigin-Name: c3288f16848866a2c846221c33631785f7b39938078bb95c61895f789395aa1d

3 months agoFix an inconsequential typo in the output of the datedebug() SQL function.
drh [Thu, 26 Feb 2026 12:17:19 +0000 (12:17 +0000)] 
Fix an inconsequential typo in the output of the datedebug() SQL function.

FossilOrigin-Name: 3a92a53d8cf77822c22618dbf35851a20d27c4a659d23db2d24e7ccb3f61c7fc

3 months agoFix a problem where the wrong collation could be used as part of a row-value comparis...
dan [Thu, 26 Feb 2026 11:03:22 +0000 (11:03 +0000)] 
Fix a problem where the wrong collation could be used as part of a row-value comparison between columns with different collation sequences. [forum:/forumpost/6ceca07fc3 | Forum post 6ceca07fc3].

FossilOrigin-Name: 212c68249cc0e8904fc36d8e90646d04604f2b3b9d4c32eaeac7d920fa0fba99

3 months agoThe GCC bug is fixed in GCC-15.
drh [Wed, 25 Feb 2026 21:19:20 +0000 (21:19 +0000)] 
The GCC bug is fixed in GCC-15.

FossilOrigin-Name: 21f9abe6c9d1e2ce99ed75c2984103dcd2356b5d53bca3f3732176bb856bf3f7

3 months agoReinstant the work-around for [https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96270...
drh [Wed, 25 Feb 2026 12:44:19 +0000 (12:44 +0000)] 
Reinstant the work-around for [https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96270|GCC compiler bug 96270]
which is apparently still an issue as of gcc 13.3.0 with -m32 on Mint Linux.
The test case in the bug report is fixed, but the vdbeMemRenderNum() routine
in SQLite still shows the problem.

FossilOrigin-Name: 7fae321095ebec775de1b39b974fb1f295d5efbd5723e9cb29a981c97a4262c8