]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
10 months agoFix harmless compiler warning introduced by the setlk-snapshot-fix merge.
drh [Tue, 3 Jun 2025 10:18:54 +0000 (10:18 +0000)] 
Fix harmless compiler warning introduced by the setlk-snapshot-fix merge.

FossilOrigin-Name: c1f20f89d9eb3e1dd1018c0e0efe5d3043a592f078e235ad04b960334c7186c2

10 months agoFix JSONB edit so that when it is trying to reduce the size of an element
drh [Mon, 2 Jun 2025 23:34:42 +0000 (23:34 +0000)] 
Fix JSONB edit so that when it is trying to reduce the size of an element
it understands 0xf0 (8-byte) sizes.

FossilOrigin-Name: 5b3de6e8ab6b228bf6c0e0c31b50ca29d8b7852b460eaaca6c6ecf5a3c083cab

10 months agoIncrease the version number to 3.51.0
drh [Mon, 2 Jun 2025 18:58:42 +0000 (18:58 +0000)] 
Increase the version number to 3.51.0

FossilOrigin-Name: ed69d4432712603bea2161e0ca0c99e59480fb000e1cbf1aa1401d924544e351

10 months agoFixes to ensure SQLITE_ENABLE_SETLK_TIMEOUT builds use a blocking lock and do not...
dan [Mon, 2 Jun 2025 18:48:36 +0000 (18:48 +0000)] 
Fixes to ensure SQLITE_ENABLE_SETLK_TIMEOUT builds use a blocking lock and do not call xSleep() when (a) opening a snapshot transaction, and (b) when blocked by another process running recovery.

FossilOrigin-Name: 7f9c0cdd0630a41db359b188b226a1ad6a3bae1663c27169acfe25edc7fb171b

10 months agoFix os_win.c so that SQLITE_ENABLE_SETLK_TIMEOUT=2 builds work on windows. setlk-snapshot-fix
dan [Mon, 2 Jun 2025 18:37:32 +0000 (18:37 +0000)] 
Fix os_win.c so that SQLITE_ENABLE_SETLK_TIMEOUT=2 builds work on windows.

FossilOrigin-Name: 8efb95e0d4670b9c5dbd8cf34512334f47951a8dff8fdadc8645f75076acd91f

10 months agoImprove the accuracy of affinity and collating sequence analysis for
drh [Mon, 2 Jun 2025 18:34:17 +0000 (18:34 +0000)] 
Improve the accuracy of affinity and collating sequence analysis for
NATURAL JOINs to the left of RIGHT JOINs where source tables are views
or subqueries.  Initial problem report in
[forum:/forumpost/829306db47|forum post 829306db47].

FossilOrigin-Name: f184d1d236e47962658a4639d9533f67a525b74cfe0f06c93e9b85fdcd02a15f

10 months agoUpdates to new test cases to run with SQLITE_ENABLE_SETLK_TIMEOUT=2 builds.
dan [Mon, 2 Jun 2025 18:09:46 +0000 (18:09 +0000)] 
Updates to new test cases to run with SQLITE_ENABLE_SETLK_TIMEOUT=2 builds.

FossilOrigin-Name: c6d3e3542fdf6a3428d3a2ec20c699c169ed53341dc782d81f7fe5944f769748

10 months agoMerge trunk changes into this branch.
dan [Mon, 2 Jun 2025 17:44:10 +0000 (17:44 +0000)] 
Merge trunk changes into this branch.

FossilOrigin-Name: 7d27451804e525190f8e67da75aaeb3bf2de677021f7566c6681398e60a88c72

10 months agoSlight modernization of the TEA README.txt.
stephan [Mon, 2 Jun 2025 15:17:59 +0000 (15:17 +0000)] 
Slight modernization of the TEA README.txt.

FossilOrigin-Name: bf7be67e3fb7b75fc281997f7bf9aa69eaf4da6bdf2fefe359b12d25ec95f512

10 months agoTEA: remove the stale man page and references to the MSC makefiles from the README...
stephan [Mon, 2 Jun 2025 15:10:41 +0000 (15:10 +0000)] 
TEA: remove the stale man page and references to the MSC makefiles from the README.txt. Based on discussion at [forum:87e6660191a472c5 | forum post 87e6660191a472c5].  A couple of weeks ago we internally discussed pulling in the MSC makefiles from the 3.49 tree but they are stale and possibly unused, so opted against it for the time being.

FossilOrigin-Name: c9888a409565e6c8891a3dafa56962df364fb729a61df2701dc0bb282e36fb75

10 months agoRemove an unnecessary parameter from sqlite3VdbeRecordUnpack(). Improved
drh [Mon, 2 Jun 2025 13:54:33 +0000 (13:54 +0000)] 
Remove an unnecessary parameter from sqlite3VdbeRecordUnpack().  Improved
comments and assert()s on KeyInfo.

FossilOrigin-Name: 387f4c4d98b8fb83f6ae406e4143dabda7766e8752b7f6ca104655e51330c978

10 months agoFix stale comments related to KeyInfo. Add new assert()s associated with
drh [Mon, 2 Jun 2025 09:49:07 +0000 (09:49 +0000)] 
Fix stale comments related to KeyInfo.  Add new assert()s associated with
memory management of KeyInfo.

FossilOrigin-Name: abd805bc76f14ede7359b029908179b7ca57e929c5918acae1403ef73ae0bd47

10 months agoFix an off-by-one error in the size computation of a vdbe-sorter.
drh [Sun, 1 Jun 2025 21:38:35 +0000 (21:38 +0000)] 
Fix an off-by-one error in the size computation of a vdbe-sorter.
[forum:/forumpost/c1cc8b057a|Forum post c1cc8b057a].
Problem introduced by checkin [d4307a0d43f42e96].

FossilOrigin-Name: 8b7a7fcf62e5c2742c243808fa482472954f2b4aae0bc7ae513bc07065c93737

10 months agoFix VACUUM so that it works even when ATTACH_WRITE is disabled.
drh [Sun, 1 Jun 2025 16:10:25 +0000 (16:10 +0000)] 
Fix VACUUM so that it works even when ATTACH_WRITE is disabled.

FossilOrigin-Name: 42494f85acb303919d3f1f2202f8b95fbd657652da4b8dc00451c10ea6c496e0

10 months agoEnhance "box" and "column" mode formatting in the CLI to better deal with
drh [Sat, 31 May 2025 20:51:42 +0000 (20:51 +0000)] 
Enhance "box" and "column" mode formatting in the CLI to better deal with
double-wide characters.

FossilOrigin-Name: b0de22ed0abf2ea5d269f191c884d7b2be167a2ed27018c25aaa0ea238cd621a

10 months agoUpdate a few test scripts so that they run on windows.
dan [Sat, 31 May 2025 19:55:07 +0000 (19:55 +0000)] 
Update a few test scripts so that they run on windows.

FossilOrigin-Name: 14a18f4e3a3f35e636262a253364ab1e8054ed38c0c7fd482633522cbcf5ffc4

10 months agoNew makefile target "xdevtest" works like "releasetest" except that it
drh [Sat, 31 May 2025 18:26:37 +0000 (18:26 +0000)] 
New makefile target "xdevtest" works like "releasetest" except that it
omits the "verify-source" dependency so that it can be run with uncommitted
changes in the source tree.

FossilOrigin-Name: 1afb1ac3e9f0a122f1374799c09b60a0dd5443434d4567d94385096ada91bf12

10 months agoFix an affinity problem caused by a USING or NATURAL JOIN on the LHS of a FULL JOIN...
dan [Sat, 31 May 2025 18:16:21 +0000 (18:16 +0000)] 
Fix an affinity problem caused by a USING or NATURAL JOIN on the LHS of a FULL JOIN. [forum:/forumpost/5028c785b6|Forum post 5028c785b6].

FossilOrigin-Name: 8d393ca07fe09f48d77adb517e2e4baaa58a9251422de62a0504999205d3ea1d

10 months agoRelax query flattener constraint (3b) and thereby allow flattening the RHS of
drh [Sat, 31 May 2025 16:17:14 +0000 (16:17 +0000)] 
Relax query flattener constraint (3b) and thereby allow flattening the RHS of
a LEFT JOIN even if the RHS contains a virtual table.  This was previously
disallowed by [9dbae1df75219e2a] as a performance optimization.  It
turns out that the constraint causes performance issues, and we do not have
a record of any performance issue that it solves.

FossilOrigin-Name: 1ddaa92057e550ea281d45d9860eafe69399224725548a93dd91c47a34e52152

10 months agoFix assert() statements in os_unix.c and os_win.c. Allow walsetlk_recover.test to...
dan [Sat, 31 May 2025 15:10:41 +0000 (15:10 +0000)] 
Fix assert() statements in os_unix.c and os_win.c. Allow walsetlk_recover.test to run in non-SQLITE_ENABLE_SNAPSHOT builds.

FossilOrigin-Name: 9f521ecda2b8d2f383cc84e308b3a4adfcf1bd6339eb834c8fa76c8704c861b7

10 months agoMove a mis-located makefile comment block.
stephan [Sat, 31 May 2025 11:08:06 +0000 (11:08 +0000)] 
Move a mis-located makefile comment block.

FossilOrigin-Name: 7d884386bec11f47c2c18002dd8c573c9b5cb6f7cdf2307a96cccead05b6abf2

10 months agotcl extension: UDFs may now 'break' to return an SQL NULL. Add the (eval -asdict...
stephan [Sat, 31 May 2025 11:02:06 +0000 (11:02 +0000)] 
tcl extension: UDFs may now 'break' to return an SQL NULL. Add the (eval -asdict) flag to use a dict, instead of an array, for the eval row data.

FossilOrigin-Name: 413a626b5c7902c1810142536c36e4ea8ee7c616ea82dfe1114199f9319091f7

10 months agoAdd some missing UNUSED_PARAMETER() annotations to squelch downstream build warnings...
stephan [Sat, 31 May 2025 09:44:00 +0000 (09:44 +0000)] 
Add some missing UNUSED_PARAMETER() annotations to squelch downstream build warnings when using -Wextra -pedantic.

FossilOrigin-Name: a98a2f49355ec39c56e571c70d377675b1bd99a6d43cf9217b0eb1e081895d8e

10 months agoFollow-up to the previous: The same optimization suppression needs to
drh [Fri, 30 May 2025 22:58:09 +0000 (22:58 +0000)] 
Follow-up to the previous:  The same optimization suppression needs to
happen if the left-hand side is coming from a LEFT JOIN.

FossilOrigin-Name: cf5b37b3a39013d8ca9de92da2289346caf52b56daff59e19b140cc586a3421f

10 months agoIf blocking locks are enabled, avoid using the busy handler when blocked by another...
dan [Fri, 30 May 2025 20:52:18 +0000 (20:52 +0000)] 
If blocking locks are enabled, avoid using the busy handler when blocked by another process running recovery.

FossilOrigin-Name: a35236757ab57c4c9b34e47c5dbc10d8f1220f8152955f5303cf9c3902ee169b

10 months agoWhen synthesizing an ON constraint from a USING or NATURAL, if the left-hand
drh [Fri, 30 May 2025 19:55:46 +0000 (19:55 +0000)] 
When synthesizing an ON constraint from a USING or NATURAL, if the left-hand
side is coming from a RIGHT JOIN, be sure to set the EP_CanBeNull flag so that
the optimizer knows to check for NULL even if the column has a NOT NULL
constraint.  Fix for the problem reported by
[forum:/forumpost/4fc70203b61c7e12|forum post 4fc70203b61]

FossilOrigin-Name: 60adc78a22956429d34ccc4e2c193c5994c11c3b3cff7901d47fad7d92dba935

10 months agoAvoid invoking the busy-handler if a blocking lock times out while attempting to...
dan [Fri, 30 May 2025 18:23:03 +0000 (18:23 +0000)] 
Avoid invoking the busy-handler if a blocking lock times out while attempting to open a snapshot transaction.

FossilOrigin-Name: fe11f85fd3283bb7002f43bd8b796e9e7b67f6d1a92eb676be06b46d1458fc1d

10 months agoConfigure-related fixes and additions, most notably integration of self-tests for...
stephan [Fri, 30 May 2025 16:08:31 +0000 (16:08 +0000)] 
Configure-related fixes and additions, most notably integration of self-tests for proj.tcl's APIs. Teaish make-install fixes based on the discussion in [forum:87e6660191a472c5 | forum thread 87e6660191a472c5].

FossilOrigin-Name: 2e486f8fd011d28fdd7e59ff34f7f04374019932eb160a8c4de56a5ce01e5782

10 months agoRandom typo fixes in JNI docs.
stephan [Fri, 30 May 2025 15:46:52 +0000 (15:46 +0000)] 
Random typo fixes in JNI docs.

FossilOrigin-Name: f63608a3847469b130e029cc569fe6f03a9053352ec43c10d69849cbab4f61c5

10 months agoUse a more robust backup definition for offsetof().
drh [Fri, 30 May 2025 15:43:04 +0000 (15:43 +0000)] 
Use a more robust backup definition for offsetof().

FossilOrigin-Name: 22441955e03df07903b98832a60c05c53721cd67c667f6c83d5e97fcc62735ee

10 months agoAdd "include <stddef.h>" to fts5 and rtree to ensure that they use the system version...
dan [Fri, 30 May 2025 11:14:11 +0000 (11:14 +0000)] 
Add "include <stddef.h>" to fts5 and rtree to ensure that they use the system version of the offsetof() macro when it is available, as the built-in version triggers ubsan errors with clang.

FossilOrigin-Name: 838deb7f3423df84061a043928ed34e1d74e2e7d57ef1a9519bb32fea82e4352

10 months agoSquelch an interesting but harmless struct initialization warning emitted after an...
stephan [Fri, 30 May 2025 10:18:09 +0000 (10:18 +0000)] 
Squelch an interesting but harmless struct initialization warning emitted after an emsdk update. Fix JS breakage introduced by changes in Emscripten 4.0.7: manually export the HEAPxyz symbols which used to be exposed by default.

FossilOrigin-Name: 10d0897cc9a5998fe1344cfbb242a78b59012e29aa3b1993895dfac26721b053

10 months agoFix the missing -lm link flag for the sqlite3 shell when building the autoconf bundle...
stephan [Thu, 29 May 2025 20:29:13 +0000 (20:29 +0000)] 
Fix the missing -lm link flag for the sqlite3 shell when building the autoconf bundle with --disable-static-shell, as reported in [forum:5adf1c932a | forum post 5adf1c932a].

FossilOrigin-Name: f6318c4a6b5a133657741c066ef2c76a71880dbc98cfff1fdd632637daf002dc

10 months agoExtend the fix for ticket [623eff57e76d45f6] so that it covers RIGHT JOIN
drh [Thu, 29 May 2025 18:44:41 +0000 (18:44 +0000)] 
Extend the fix for ticket [623eff57e76d45f6] so that it covers RIGHT JOIN
in addition to LEFT JOIN.  Problem reported by
[forum:/forumpost/7dee41d32506c4ae|forum post 2025-05-29T15:10:14Z].

FossilOrigin-Name: 29b1e1b97619d03a97ef562a5707929e241d019179b4ff1d0bc2a8c008441431

10 months agoFix a goofy hash function in Lemon. No changes to SQLite itself.
drh [Thu, 29 May 2025 17:46:34 +0000 (17:46 +0000)] 
Fix a goofy hash function in Lemon.  No changes to SQLite itself.

FossilOrigin-Name: d6cbabe23d3919d5bde6a83421cdae92125caec09d5c39a648d0305878c6a1dc

10 months agoVersion 3.50.0 version-3.50.0
drh [Thu, 29 May 2025 14:26:00 +0000 (14:26 +0000)] 
Version 3.50.0

FossilOrigin-Name: dfc790f998f450d9c35e3ba1c8c89c17466cb559f87b0239e4aab9d34e28f742

10 months agoDo not use a partial index unless the WHERE clause uses one or more columns
drh [Wed, 28 May 2025 16:56:23 +0000 (16:56 +0000)] 
Do not use a partial index unless the WHERE clause uses one or more columns
from the table being indexed.  This resolves the issue reported by
[forum:/forumpost/a8704b30f3|forum post 2025-05-28T13:03:40Z]. Test cases
are in TH3.

FossilOrigin-Name: f037ca064daeb81cb386da2a372d8e2d2dce55a3a13bc7bea4968ca51bf2843a

10 months agoDo not use a partial index if the truth of the WHERE clause does not depend silly-partial-indexes
drh [Wed, 28 May 2025 14:59:42 +0000 (14:59 +0000)] 
Do not use a partial index if the truth of the WHERE clause does not depend
on at least one column from the table being indexed.

FossilOrigin-Name: cbe2a392e45d40778570656d2ef2db43e58ad6453bd9d4b936fecfd963e22736

10 months agoSlight change to tool/split-sqlite3c.tcl to make it compatible with jimsh
drh [Mon, 26 May 2025 23:20:23 +0000 (23:20 +0000)] 
Slight change to tool/split-sqlite3c.tcl to make it compatible with jimsh

FossilOrigin-Name: fe670ddda933007386eb10facf4048ee88671f74b1fd41dfc3120beb717b8c9e

10 months agoFix a bug in the speedtest.tcl testing script that was introduced by
drh [Mon, 26 May 2025 17:29:13 +0000 (17:29 +0000)] 
Fix a bug in the speedtest.tcl testing script that was introduced by
[7e9845433ff26bdc]

FossilOrigin-Name: e4ffa86aa6ca82a42933281f6cbfca7bad702797eb8d6e684a1992e68dc1cfb7

10 months agoIn the TEA build, enable USE_TCL_STUBS on Mac platforms.
stephan [Mon, 26 May 2025 16:59:49 +0000 (16:59 +0000)] 
In the TEA build, enable USE_TCL_STUBS on Mac platforms.

FossilOrigin-Name: 0b5415151c9bf558378f83b1a60df3d3760f1aa311895af04e1fb79a8fb29e79

10 months agoOn OpenBSD, do not test fuzzcheck with ubsan as part of "make devtest".
dan [Mon, 26 May 2025 16:17:06 +0000 (16:17 +0000)] 
On OpenBSD, do not test fuzzcheck with ubsan as part of "make devtest".

FossilOrigin-Name: a3dabd599c3d3143b67258b307d352968e5f5d4ea0456940d16ae678de8c95eb

10 months agoAvoid calls to sprintf() in Lemon, since OpenBSD hates sprintf().
drh [Mon, 26 May 2025 15:36:43 +0000 (15:36 +0000)] 
Avoid calls to sprintf() in Lemon, since OpenBSD hates sprintf().

FossilOrigin-Name: ed17858ddf833b6b9c2164f31ee9138a998d28ec1564d09e20deb102eefedbc8

10 months agoWhen detecting TCLLIBDIR, skip over //zipfs paths, as the (file isdirectory) command...
stephan [Mon, 26 May 2025 15:20:57 +0000 (15:20 +0000)] 
When detecting TCLLIBDIR, skip over //zipfs paths, as the (file isdirectory) command will actually return true for those, but they're useless for installation purposes. This resolves the tea build's inability to install on stock openbsd.

FossilOrigin-Name: 5b29724a3287c9a910f303faf056d0706b66c3e6ba23f9746c11d775c631f374

10 months agotclsqlite.c doc typo fix.
stephan [Mon, 26 May 2025 07:15:20 +0000 (07:15 +0000)] 
tclsqlite.c doc typo fix.

FossilOrigin-Name: de0dfac1e5ca9d2661674c20664095386f60c77378311507fcba08111df52b38

10 months agoChange json_group_object() so that it ignores entries where the label
drh [Sat, 24 May 2025 20:20:20 +0000 (20:20 +0000)] 
Change json_group_object() so that it ignores entries where the label
is NULL.  [forum:/forumpost/e5bd251fb5|Forum post e5bd251fb5].

FossilOrigin-Name: 28215d131cd970a2756338579fb6b6091ab155be8f419505cae8ac918956165c

10 months agovtablog.c doc fixes reported in [forum:416d1e37b2|forum post 416d1e37b2].
stephan [Sat, 24 May 2025 16:01:50 +0000 (16:01 +0000)] 
vtablog.c doc fixes reported in [forum:416d1e37b2|forum post 416d1e37b2].

FossilOrigin-Name: 5d25f62bcd2d754134f608162778b49b0e71c29bd5a6f2461a07caca3d76c7de

10 months agoAmend the previous: Set SQLITE_JSON_MAX_DEPTH to 500 on *all* builds
drh [Sat, 24 May 2025 01:34:41 +0000 (01:34 +0000)] 
Amend the previous:  Set SQLITE_JSON_MAX_DEPTH to 500 on *all* builds
of fuzzcheck.

FossilOrigin-Name: c266e38c5b61f47b920027aad418b641ab32cb8a3360dbcfd9f9f29b14fd5375

10 months agoLimit JSON recursion depth to 500 when running ASAN in fuzzcheck, to prevent
drh [Fri, 23 May 2025 20:50:49 +0000 (20:50 +0000)] 
Limit JSON recursion depth to 500 when running ASAN in fuzzcheck, to prevent
stack overflow on ARM64.

FossilOrigin-Name: 5e96e177a040b46aa55492037ce5dc71ab49d66b45659d739f2ee6c3042f16ef

10 months agoAdd the --osmalloc option to the test/speedtest.tcl testing script.
drh [Fri, 23 May 2025 14:52:23 +0000 (14:52 +0000)] 
Add the --osmalloc option to the test/speedtest.tcl testing script.
Adjust ./configure so that it does not check for malloc_usable_size().

FossilOrigin-Name: 7e9845433ff26bdc5fe8654281d584394b77e3b206d09669b4468e0271c6eb37

10 months agoFix a problem with using streaming iterators with sqlite3changegroup_add_change().
dan [Thu, 22 May 2025 18:04:48 +0000 (18:04 +0000)] 
Fix a problem with using streaming iterators with sqlite3changegroup_add_change().

FossilOrigin-Name: 3dbde727146d28c316df47c7b5116be7f2476a0a0c893207c2a4ca3ab285cb5e

10 months agoClarify some malloc size computations to simplify the proof that they
drh [Mon, 19 May 2025 14:50:36 +0000 (14:50 +0000)] 
Clarify some malloc size computations to simplify the proof that they
are safe.  Remove some code associated with cygwin that is marked "#if 0".

FossilOrigin-Name: ba8184d132a935aa1980fbfb61ff308b93d433d559db4968f9014f7653ac9c6e

10 months agoMake the new sqlite3_setlk_timeout() interface accessible to loadable
drh [Mon, 19 May 2025 14:04:48 +0000 (14:04 +0000)] 
Make the new sqlite3_setlk_timeout() interface accessible to loadable
extensions.

FossilOrigin-Name: 8819b7285b71932327f47d29fa575cfb338e2fccd3f7c2023faf0575bfdb0079

10 months agoRemove stray tab characters from source files.
drh [Mon, 19 May 2025 12:46:08 +0000 (12:46 +0000)] 
Remove stray tab characters from source files.

FossilOrigin-Name: 298ff5a1dc5dbccaf6acd91731044f478a5ce522745332801708ceee996b01e6

10 months agoFix a harmless comment typo
drh [Mon, 19 May 2025 12:34:11 +0000 (12:34 +0000)] 
Fix a harmless comment typo

FossilOrigin-Name: c4d25acec3c1e28e5a4664a74c263cc0d00e118a6db4b26b51cb0d42d0f2b26f

10 months agoAdjust the tool/warnings.sh script so that it works on the latest versions
drh [Mon, 19 May 2025 11:08:30 +0000 (11:08 +0000)] 
Adjust the tool/warnings.sh script so that it works on the latest versions
of clang on Mac.

FossilOrigin-Name: 05a3dd9a179193d00968329152c8ffe6532f0cbdad7d19b47af32aebc0cd0d9e

10 months agoLatest teaish pieces, most significantly for tcl portability fixes. Move autoconf...
stephan [Sat, 17 May 2025 11:06:02 +0000 (11:06 +0000)] 
Latest teaish pieces, most significantly for tcl portability fixes. Move autoconf/teaish/autosetup/... to autosetup/teaish/. to simplify maintenance and deployment via the autoconf bundle.

FossilOrigin-Name: 381d3e82e831bedee56108fb585880d802c4d7d50b0804d909a33ff15a3be185

10 months agoMinor tcl doc update. tea-cleanups
stephan [Sat, 17 May 2025 10:35:11 +0000 (10:35 +0000)] 
Minor tcl doc update.

FossilOrigin-Name: 43259e8c3fab13b4597cdd1c670df00ec756a6fefdeb7d4ba2e0644e4ad47113

10 months agoRename feature-tests.tcl to feature.tcl. Haiku tcl portability fixes.
stephan [Sat, 17 May 2025 10:32:48 +0000 (10:32 +0000)] 
Rename feature-tests.tcl to feature.tcl. Haiku tcl portability fixes.

FossilOrigin-Name: 15bd9e581a6d6ebe281b091adc04dca4d1c7fa9bbb582bcbab8c401b4f976753

10 months agoLatest upstream teaish pieces for minor fixes. Restructure this copy of teaish to...
stephan [Sat, 17 May 2025 07:02:06 +0000 (07:02 +0000)] 
Latest upstream teaish pieces for minor fixes. Restructure this copy of teaish to simplify maintenance and the autoconf bundle build.

FossilOrigin-Name: 2b8d9b75ec5fe96cb5d06a3464fd4eb9a53018b7b548fedcd6cdbc46cdb55bdc

10 months agoImproved version of the previous check-in.
drh [Fri, 16 May 2025 18:19:11 +0000 (18:19 +0000)] 
Improved version of the previous check-in.

FossilOrigin-Name: 036c97e36cb36a2ac765a8e8539433dcb63f69155d4c24857f84faa44eed6eb5

10 months agoFix the optimization of check-in [663f5dd32d9db832] that strives to avoid
drh [Fri, 16 May 2025 17:30:20 +0000 (17:30 +0000)] 
Fix the optimization of check-in [663f5dd32d9db832] that strives to avoid
duplicate compuations in the GROUP BY clause so that it works even if the
GROUP BY term is a subquery on the RHS of a LEFT JOIN.  Problem found
by dbsqlfuzz.  Test cases in TH3.

FossilOrigin-Name: 955a026996b93e530ca5b566689cc646b31d3b9b5a5837897a58452d70f6d942

10 months agoAdd the --enablefk option to the "changeset apply" command of the
drh [Thu, 15 May 2025 18:50:19 +0000 (18:50 +0000)] 
Add the --enablefk option to the "changeset apply" command of the
changeset program.

FossilOrigin-Name: e98d46d436f8d251ae0da5ee85fd856aca3b57cd48d1be31fa6ca88fe72cad00

10 months agoEnhance the "changeset" utility program with new command-line options for
drh [Thu, 15 May 2025 17:33:32 +0000 (17:33 +0000)] 
Enhance the "changeset" utility program with new command-line options for
the "changeset apply" command.

FossilOrigin-Name: 428daca4f1b3e1a33b7e2f5acf114fa6136d46555e9947e2e88ea107bfec5e4f

10 months agoRework the showHelp() function in the CLI implementation so that its
drh [Thu, 15 May 2025 11:20:54 +0000 (11:20 +0000)] 
Rework the showHelp() function in the CLI implementation so that its
purpose and operation are well described by the header commit.  Omit
the use of enums that cause issues for MSVC 2025.

FossilOrigin-Name: 336ceeccc6f85bd78f4a26648af7edf9056d569a767b4120f125a02b2090a349

10 months agoBack out the "low-quality index" query planner hack of check-in
drh [Wed, 14 May 2025 16:40:05 +0000 (16:40 +0000)] 
Back out the "low-quality index" query planner hack of check-in
[bcac937526d9a6ef].  Subsequent query planner enhancements for dealing
with star-queries make that change unnecessary and the change was recently
found to cause a performance regression in an unrelated query.
Also fix a typo in a debugging message.

FossilOrigin-Name: e7dcf25efae364b7cdf9eb8265803c816c8b8557e4a7684da428badc6ffb3875

10 months agoFix trunk fork.
drh [Tue, 13 May 2025 19:06:11 +0000 (19:06 +0000)] 
Fix trunk fork.

FossilOrigin-Name: 53644c42c5ee40e905a72bb014515e5e30265577d543eeca09139800822b5b42

10 months agoAdjust the strftime() test in test/date4.test to remove flags not supported in musl...
stephan [Tue, 13 May 2025 18:58:56 +0000 (18:58 +0000)] 
Adjust the strftime() test in test/date4.test to remove flags not supported in musl libc if that environment is detected.

FossilOrigin-Name: fc254c1eb784c79a371bf961945a18a680982cdcd3fdcd7e6bb481712fe21cf8

10 months agoFirst cut at enhancing the fsdir virtual table so that it works with
drh [Tue, 13 May 2025 16:58:36 +0000 (16:58 +0000)] 
First cut at enhancing the fsdir virtual table so that it works with
unicode characters on Windows.

FossilOrigin-Name: c9e04dadfdf6c860631ce5603693add565ff2033aa25af5736302af7045fc91e

10 months agoOmit the unused readdir_r() routine from test_windirent.c
drh [Tue, 13 May 2025 15:09:13 +0000 (15:09 +0000)] 
Omit the unused readdir_r() routine from test_windirent.c

FossilOrigin-Name: f9a216e3ad1b3bc9be350aad5ef3dc8b3534d3ee67d160bfedda81a61295320c

11 months agoSession extension doc typo fix reported in [forum:75e9408acb|forum post 75e9408acb].
stephan [Mon, 12 May 2025 19:12:50 +0000 (19:12 +0000)] 
Session extension doc typo fix reported in [forum:75e9408acb|forum post 75e9408acb].

FossilOrigin-Name: b96cfff52b4f364388f168198e999ae2407c4afbc7b020f8bb350ab103ffb55c

11 months agoFix a coding mistake in vfstrace.
drh [Mon, 12 May 2025 11:48:39 +0000 (11:48 +0000)] 
Fix a coding mistake in vfstrace.

FossilOrigin-Name: f0054cc0bce4ed735796da1ea68b7773a582042bdd60fdae4e1af4c592104d15

11 months agoRemove a redundant typedef from the sqlite3_rsync.c source file.
drh [Sun, 11 May 2025 10:48:10 +0000 (10:48 +0000)] 
Remove a redundant typedef from the sqlite3_rsync.c source file.

FossilOrigin-Name: b4c37c6bcc644e21a29955e31151ea22a07627e524ce913afd3d2d6eeb7e0bb6

11 months agoProvide the SQLITE_BUG_COMPATIBLE_20250510 compile-time option that restores
drh [Sat, 10 May 2025 17:09:53 +0000 (17:09 +0000)] 
Provide the SQLITE_BUG_COMPATIBLE_20250510 compile-time option that restores
the JSON5 bug fixed in the previous check-in, in case some applications need
it for legacy compatibility.

FossilOrigin-Name: 491cf31904fdbc9567b838d1ba27901e75f8ea3a117043017d08354bb09f9711

11 months agoAdd enforcement of the obscure JSON5 syntax rule that the &#92;0 escape
drh [Sat, 10 May 2025 15:53:17 +0000 (15:53 +0000)] 
Add enforcement of the obscure JSON5 syntax rule that the &#92;0 escape
sequence must not be followed by a digit.
[forum:/forumpost/c061e87faf7d1c55|Forum post c061e87faf].

FossilOrigin-Name: 83c7477f2b9b0d6cb54cf6b14bf3c8ef4807e4bddc7986d275cf6717da8606b7

11 months agoFix PRAGMA trusted_schema=OFF and similar so that it restricts the kinds
drh [Thu, 8 May 2025 16:18:18 +0000 (16:18 +0000)] 
Fix PRAGMA trusted_schema=OFF and similar so that it restricts the kinds
of functions in CHECK constraints that the documentation says it does.  It
was letting through some function that it ought not have.  This is a
defect in [5720924cb07766cd].  See
[forum:/forumpost/3fa9d44c0b381342|forum thread 2025-05-08T08:50Z].
Additional test cases will be added separately.

FossilOrigin-Name: 25920beebf71ebc9a1bb9f56932280c9e03390f26fe9da2258f950979b238ce6

11 months agoInternal doc typo fix. No code changes.
stephan [Thu, 8 May 2025 13:51:55 +0000 (13:51 +0000)] 
Internal doc typo fix. No code changes.

FossilOrigin-Name: ac2aa39f7e3ae7ac921fac6566186939a1282f80ced5b3e3d5006a77ecf583ff

11 months agoFix a harmless warning about and oversize shift operation on malformed JSONB
drh [Wed, 7 May 2025 17:13:30 +0000 (17:13 +0000)] 
Fix a harmless warning about and oversize shift operation on malformed JSONB
inputs.  [https://issues.oss-fuzz.com/issues/415850463|OSSFuzz 415850463].

FossilOrigin-Name: cf8b55b3b6f0b73158e21731a206d5a8d8d9892989d91171a11c6dbbee34b338

11 months agoAdd test cases for the NOT NULL/IS NULL optimization in CHECK constraints fix.
dan [Tue, 6 May 2025 17:56:32 +0000 (17:56 +0000)] 
Add test cases for the NOT NULL/IS NULL optimization in CHECK constraints fix.

FossilOrigin-Name: 6eb2939a6093c0796910645172d80c53055559dd57c012f1dc815d89fbf84447

11 months agoFix a bug in the NOT NULL/IS NULL optimization of check-in [cb94350185f555c3]
drh [Tue, 6 May 2025 17:53:27 +0000 (17:53 +0000)] 
Fix a bug in the NOT NULL/IS NULL optimization of check-in [cb94350185f555c3]
that can cause invalid data to be used for a column if that column has a
CHECK constraint that includes the NOT NULL or IS NULL operator.
Problem discovered by the
[https://issues.chromium.org/issues/415397143|Chromium fuzzer].  Never
seen in the wild, as far as anybody knows.

FossilOrigin-Name: 2adaee9aa90f280a406007695fbc4a314806584c93d6b62b46c031492b31ec27

11 months agoFix the sqlite3VdbeTypeofColumn() function so that it works correctly
drh [Tue, 6 May 2025 16:28:44 +0000 (16:28 +0000)] 
Fix the sqlite3VdbeTypeofColumn() function so that it works correctly
even when SQLITE_DEBUG is defined.

FossilOrigin-Name: 1d5021533ed688d7a815ce75b338c72f577c14554027f88a21419935a9e68239

11 months agoFix console-I/O on Windows for DEBUG=3 builds. Broken by
drh [Tue, 6 May 2025 15:39:39 +0000 (15:39 +0000)] 
Fix console-I/O on Windows for DEBUG=3 builds.  Broken by
[925e97e6f4238f02].

FossilOrigin-Name: ccef4f7058928943be9204b2e53baaf791021e78e538396ba9f2a1d76323e8cf

11 months agoEnhance sqlite3_rsync so that if the first attempt to invoke a copy
drh [Sat, 3 May 2025 15:17:21 +0000 (15:17 +0000)] 
Enhance sqlite3_rsync so that if the first attempt to invoke a copy
of itself on the remote system using ssh fails, try again after
augmenting the PATH.  This enables sqlite3_rsync to work without the
--exe option when the remote system is a Mac.

FossilOrigin-Name: 38d4c94d8c7802101ef3bfb411002f9497fdbbbd2b4d3514cef5b76ffd66f75b

11 months agoFix a harmless redundant variable declaration in sqlite3_rsync.
drh [Sat, 3 May 2025 10:55:47 +0000 (10:55 +0000)] 
Fix a harmless redundant variable declaration in sqlite3_rsync.

FossilOrigin-Name: f8f15eff6ae50d569ed13a3b18f33eaa43453c0cb80b6007df38e880b62f45d0

11 months agoAddition summary results output when using -vvv on sqlite3_rsync.
drh [Sat, 3 May 2025 10:49:39 +0000 (10:49 +0000)] 
Addition summary results output when using -vvv on sqlite3_rsync.

FossilOrigin-Name: c702999cfac37fdcae64d261408e58d1f49fee65434fe346db6a2a6c7f8ac54e

11 months agoPromote the --protocol option to sqlite3_rsync from being an undocumented
drh [Sat, 3 May 2025 10:35:32 +0000 (10:35 +0000)] 
Promote the --protocol option to sqlite3_rsync from being an undocumented
debug option to being a supported and user-visible option.  This is
sometimes needed to work around bugs in prior versions running on the
remote.

FossilOrigin-Name: 4855e04e44e8fce2d6e37dd468eb6e9f4565c36cbc964156e65ac0449d7c212f

11 months agoEnhance sqlite3_rsync (in a backwards-compatible way) so that it has the
drh [Sat, 3 May 2025 08:17:46 +0000 (08:17 +0000)] 
Enhance sqlite3_rsync (in a backwards-compatible way) so that it has the
ability to send hashes for blocks of pages in addition to individual pages.
By judicious use of this capability, network bandwidth requirement to sync two
similar databases is reduced.

FossilOrigin-Name: e5d87aaa8fe1e8c8cb63813d26851183e77809a3d36e4c16c37f88b4b4724d6d

11 months agoImprovements to protocol negotiation. faster-rsync
drh [Sat, 3 May 2025 07:00:51 +0000 (07:00 +0000)] 
Improvements to protocol negotiation.

FossilOrigin-Name: 4f5a06e42010c3e047429f736ffb8e2e89a1eb599277c176945b57710f6713ca

11 months agoClean up command-line parsing. Add the undocumented
drh [Fri, 2 May 2025 23:50:30 +0000 (23:50 +0000)] 
Clean up command-line parsing.  Add the undocumented
-protocol option for debugging.

FossilOrigin-Name: 2a52b174e6e91cd7cfca0b20b39cdd231f377c7bc073f4223574556b94b16aa5

11 months agoNow appears to be working. More testing needed. Refinement of the
drh [Fri, 2 May 2025 22:25:40 +0000 (22:25 +0000)] 
Now appears to be working.  More testing needed.  Refinement of the
version-2 algorithm needed.

FossilOrigin-Name: cb035181d9fb5909696b8ec8f9c3eeb7a7dfb4b50e82e1d3f2d5ad150afcc0ff

11 months agoBug fixes. Added new debugging features to better visualize the
drh [Fri, 2 May 2025 18:32:46 +0000 (18:32 +0000)] 
Bug fixes.  Added new debugging features to better visualize the
protocol.

FossilOrigin-Name: c70330668690e7c3c55ae34137d5b2c91871432004b82b2b23a89fc3f1322a62

11 months agoThis is the start of an experiment in getting sqlite3_rsync to use less
drh [Fri, 2 May 2025 17:39:21 +0000 (17:39 +0000)] 
This is the start of an experiment in getting sqlite3_rsync to use less
bandwidth when the two databases are very similar, by sending hashes
over blocks of pages initially, rather than over individual pages, then
requesting more detail when hashes do not match.

FossilOrigin-Name: 266b4b8f0104bd4b1cff87ed78b0223006bf661a9650294a2b330d50c7ee8a0c

11 months agoDo not allow sqlite3_rsync to convert the replica from WAL-mode into
drh [Fri, 2 May 2025 11:18:09 +0000 (11:18 +0000)] 
Do not allow sqlite3_rsync to convert the replica from WAL-mode into
DELETE-mode, as that can disrupt existing clients on the replica side.
DELETE-mode to WAL-mode conversions are allowed, however.  See
[forum:/forumpost/6b575b66156673ee|forum thread 6b575b66156].

FossilOrigin-Name: 660a035b6ce6684d429b882133e032181cc1664f4efadf1bc0e4ae27d45071c4

11 months agoEnhance sqlite3_rsync so that, by default, it will sync non-WAL-mode
drh [Thu, 1 May 2025 18:07:27 +0000 (18:07 +0000)] 
Enhance sqlite3_rsync so that, by default, it will sync non-WAL-mode
database files.  Add a new command-line option --wal-only that restricts
the sync to WAL-mode databases only (the former default).  Improve
command-line option parsing so that only a single "-" is required before
each option.

FossilOrigin-Name: 4b53603fe468c0c28b818762917e41bdd870de6d4cc143688f1cdea3136c81a4

11 months agoAllow sqlite3_rsync to work on non-WAL-mode databases, as long as the rsync-non-wal-mode
drh [Thu, 1 May 2025 16:07:52 +0000 (16:07 +0000)] 
Allow sqlite3_rsync to work on non-WAL-mode databases, as long as the
--wal-only flag is not used.

FossilOrigin-Name: e4126dcd1eba4f040a7c07102d34692287b74b41a3437a3b9d15c4f8c9d4e6fd

11 months agoFix a harmless problem in the CLI in which SQL errors that occur during
drh [Wed, 30 Apr 2025 14:37:00 +0000 (14:37 +0000)] 
Fix a harmless problem in the CLI in which SQL errors that occur during
the ".schema" command are properly ignored, yes still appear in the ".log"
output. [forum:/forumpost/42fe6520b803be51|Forum post 42fe6520b8]

FossilOrigin-Name: 20abf1ec107f942e4527901685d61283c9c2fe7bcefad63dbf5c6cbf050da849

11 months agoFix an issue in Bloom filters on RHS subsqueries to IN operators.
drh [Wed, 30 Apr 2025 12:48:20 +0000 (12:48 +0000)] 
Fix an issue in Bloom filters on RHS subsqueries to IN operators.
See [forum:/forumpost/792a09cb3df9e69f|forum post 792a09cb3d] for
a description of the problem.  Also improve comments related
to [baa83b460c677c21] which was origin of the problem.

FossilOrigin-Name: cdef486e212fe4b26605065d9cff08f608cb80df48ee64e4be63637769bdfacc

11 months agoUpstream teaish for a tcl portability fix on Haiku and a much nicer impl of proj...
stephan [Tue, 29 Apr 2025 17:30:51 +0000 (17:30 +0000)] 
Upstream teaish for a tcl portability fix on Haiku and a much nicer impl of proj-tclConfig-sh-to-autosetup.

FossilOrigin-Name: ca0d30a43b3dfb95dd6b491f592031a053b0b5e95361ffe01ec8bd56d5e2d110

11 months agoRemove the run-fuzzcheck makefile targets, since testrunner now
drh [Tue, 29 Apr 2025 16:30:58 +0000 (16:30 +0000)] 
Remove the run-fuzzcheck makefile targets, since testrunner now
accomplishes that for us, and does a better job of it.

FossilOrigin-Name: 3ffd867ed31cd0779aa92b5e8b71592a8e7224977f9da8e5d6793a78bbb80070

11 months agoAdd the "--fuzzdb FILENAME" to testrunner.tcl as an alternative to setting
drh [Tue, 29 Apr 2025 14:23:21 +0000 (14:23 +0000)] 
Add the "--fuzzdb FILENAME" to testrunner.tcl as an alternative to setting
the FUZZDB environment variable (as that can be awkward to do on Windows).
Further improvements to the testrunner.tcl documentation.

FossilOrigin-Name: 6fb84156a262ff89d1a2d1df6fbfac4c1a43fb55b9d15205508662e2c9b0894f