]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
5 months agoThe debugging output for WhereLoop objects now shows cost star-query-heuristic
drh [Fri, 24 Jan 2025 16:27:18 +0000 (16:27 +0000)] 
The debugging output for WhereLoop objects now shows cost
estimate changes due to the star-query heuristic.

FossilOrigin-Name: a280f5f5480e560fc2b80e8947d8062e8b3487d930e71cb60fc9ba90d87977c1

5 months agoMinor tweaks to the star-query detection and processing.
drh [Fri, 24 Jan 2025 15:55:20 +0000 (15:55 +0000)] 
Minor tweaks to the star-query detection and processing.

FossilOrigin-Name: 61f76a45ac7aa454419fd7539a3d8e60f0733fb5a2abd034d795328f3c1b6e9b

5 months agoWhen looking for star-queries, do not count a table as a dimension table
drh [Fri, 24 Jan 2025 14:51:15 +0000 (14:51 +0000)] 
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.

FossilOrigin-Name: 5aebd7df0d577e98b3affd22b84b42dfe84a9f37fa29187505cc245b95460ba4

5 months agoFix a possible infinity loop in debugging-printf logic in the query planner.
drh [Thu, 23 Jan 2025 21:06:59 +0000 (21:06 +0000)] 
Fix a possible infinity loop in debugging-printf logic in the query planner.
No changes to production code.

FossilOrigin-Name: 9a20b94080f5379867530772e081b737ae4cf6b416469dcabb85b8dd819f491f

5 months agoWhen running wasm-opt, ignore any failure because it will fail for unknown flags...
stephan [Thu, 23 Jan 2025 19:44:09 +0000 (19:44 +0000)] 
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.

FossilOrigin-Name: c9dc581e0287e3462ac55f80ca76e7e98d31157022052c892517363c45287a7b

5 months agoRemove some now-dead makefile code, rename a var for consistency, and fix a recipe...
stephan [Thu, 23 Jan 2025 16:11:24 +0000 (16:11 +0000)] 
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.

FossilOrigin-Name: 0acd4ef3addb311476f4a670be0c4c4a0f3f88b0420886d4c1c3c3027dd51d73

5 months agoInitial support for post-processing wasm files with wasm-opt (if it's available)...
stephan [Thu, 23 Jan 2025 15:58:01 +0000 (15:58 +0000)] 
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.

FossilOrigin-Name: 5d16e3f28364de2d6b6456a6fc56bf604b9106c3ae15719f2862192ae3020cc1

5 months agoMove small parts of ext/wasm/GNUmakefile into ext/wasm/config.make.in and have the...
stephan [Thu, 23 Jan 2025 14:09:02 +0000 (14:09 +0000)] 
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.

FossilOrigin-Name: 0a426a549577b883e2de7cd0605041cc97b57f53ee6657bc318b0bfde7b62677

5 months agoRemove unnecessary --minify 0 emcc flag from the wasm build, as -g3 implies that...
stephan [Thu, 23 Jan 2025 11:21:29 +0000 (11:21 +0000)] 
Remove unnecessary --minify 0 emcc flag from the wasm build, as -g3 implies that capability along with other anti-minification features we rely on.

FossilOrigin-Name: 10c91f9cd074e8d35af1c7f8251ac18e5dd91fa14df3fe4e1fb44441c4f08c7a

5 months agoDo not strip binaries during 'make install', for consistency with the legacy build...
stephan [Thu, 23 Jan 2025 06:10:54 +0000 (06:10 +0000)] 
Do not strip binaries during 'make install', for consistency with the legacy build and per request from package maintainers.

FossilOrigin-Name: cd3fed5c2082c250c32c4d99eecd49a1ab840583fc343bcfd27fb536715d0ce9

5 months agoReplace the use of the Autools in ./autoconf/ with Autosetup and extend its configure...
stephan [Wed, 22 Jan 2025 21:34:53 +0000 (21:34 +0000)] 
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.

FossilOrigin-Name: 8c60d4c901af716d4d4dfd1dd4aa626c758fac2cb46112b24b0838b7888fc66f

5 months agoAdd the -q/--quiet option to test/speedtest.tcl. Automatically enable
drh [Wed, 22 Jan 2025 17:18:53 +0000 (17:18 +0000)] 
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.

FossilOrigin-Name: c20d21b473d8a45267262c5df1d7b102eccce8e4cfbe1e467ea66c474aea0af5

5 months agoFix date/time computations to deal with the sub-millisecond rounding
drh [Tue, 21 Jan 2025 17:37:58 +0000 (17:37 +0000)] 
Fix date/time computations to deal with the sub-millisecond rounding
problem identified in [forum:/forumpost/766a2c9231|forum post 766a2c9231].

FossilOrigin-Name: afb0a5923a6db4045fab5226198aab970d746d4866294ebba943c6986e97ecde

5 months agoPerformance improvements to the (debug-use only) Mem.pScopyFrom logic, resulting
drh [Tue, 21 Jan 2025 16:30:55 +0000 (16:30 +0000)] 
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:/forumpost/0025389d0860af82|forum post 0025389d0860af82].  This change
only affects builds that use -DSQLITE_DEBUG.

FossilOrigin-Name: 7fb1ae25d1572dd7709a0f850c148a5f745a524f01ea231e29a1ebc37c173fb9

5 months agoExplain the lack of docs in autoconf/Makefile.in and refer interested readers to... autoconf-to-autosetup
stephan [Tue, 21 Jan 2025 15:45:03 +0000 (15:45 +0000)] 
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.

FossilOrigin-Name: e5bbc2428f1000a451c1b4afd287742b9896a1a6c82d9706c6b8e7d6fb3b1e44

5 months agoThe FuncDev.nArg field values -3 and -4 now have special meansing of 1 or more
drh [Tue, 21 Jan 2025 15:12:00 +0000 (15:12 +0000)] 
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.

FossilOrigin-Name: 753fd747f24c5e9a019eb00b8a4f66e65c6733ba10a7adbd1b55786867c32ca6

5 months agoRemove now-extraneous autoconf/INSTALL and autoconf/configure.ac and update autoconf...
stephan [Tue, 21 Jan 2025 14:40:35 +0000 (14:40 +0000)] 
Remove now-extraneous autoconf/INSTALL and autoconf/configure.ac and update autoconf/README.* to account for the port to autosetup.

FossilOrigin-Name: 646667af8ca2140d823facf4578105c3d9815ea34b2a4cb96103c2fe7d718229

5 months agoHave fts5 better handle OOM errors from sqlite3_blob_close().
dan [Tue, 21 Jan 2025 14:34:59 +0000 (14:34 +0000)] 
Have fts5 better handle OOM errors from sqlite3_blob_close().

FossilOrigin-Name: f418350f3f83147bc5817a885be6e39ff9ff5722742a88d17600729c53c65010

5 months agoUse Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length
drh [Tue, 21 Jan 2025 11:10:16 +0000 (11:10 +0000)] 
Use Tcl_GetString() instead of Tcl_GetCharLength() to test for a zero-length
string in the TCL interface, since that is much more efficient.

FossilOrigin-Name: a8d9dcfd23fbfcd887e451382836c1e88215984cc01e00be11387dbf4ab26fd8

5 months agoconfigure script: work around msys's inability to 'exec' a '.sh' file by prefixing...
stephan [Mon, 20 Jan 2025 20:48:18 +0000 (20:48 +0000)] 
configure script: work around msys's inability to 'exec' a '.sh' file by prefixing the call with an explicit 'sh', as reported in [forum:befb352a42a7cd6d|forum post befb352a42a7cd6d].

FossilOrigin-Name: 25b01f1c9a5e606441bfd4e729fb88361436dffc76ef7a10c04a4d4ad0bcc655

5 months agoAdd 'dist' and missing 'install' pieces to the autoconf bundle.
stephan [Mon, 20 Jan 2025 19:57:32 +0000 (19:57 +0000)] 
Add 'dist' and missing 'install' pieces to the autoconf bundle.

FossilOrigin-Name: 16fa20413e3f3f0b6ea5d97022945843d1f785ac0142836f2a3651fd1917385f

5 months agoRemove an assert() in the unix file locking logic that is not true
drh [Mon, 20 Jan 2025 19:19:31 +0000 (19:19 +0000)] 
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.

FossilOrigin-Name: bd5dc92368e41231a07bb59dd3db8942e238129ec7a3c8d785459d9b62bfcba3

5 months agoFix an assert() that could fail if a virtual table called sqlite3_step() from within...
dan [Mon, 20 Jan 2025 18:26:58 +0000 (18:26 +0000)] 
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.

FossilOrigin-Name: 39bdbb3f6dd1d30d180526d35c11f789f5e9d45b99ead72fd4a3b136afab66b1

5 months agoconfigure script: remove an overzealous is-a-file check in the tclsh search which...
stephan [Mon, 20 Jan 2025 16:14:09 +0000 (16:14 +0000)] 
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:c27403ef974df9f1|forum post c27403ef974df9f1]. (Same change as [89306d1a4905] but to a different file, as that content was moved since the 3.48 release.)

FossilOrigin-Name: 239a3d1573f4cb720308018280b2add54034e69e38fe7060a7238875eee4f1c9

5 months agoGet libsqlite3.so and .a building in the autoconf bundle.
stephan [Sun, 19 Jan 2025 21:47:06 +0000 (21:47 +0000)] 
Get libsqlite3.so and .a building in the autoconf bundle.

FossilOrigin-Name: 88cee3fc7c8bfd9b6955fb6b2fd6b25660563e4d043ffa5ea18d8abe91afdb7f

5 months agoGet the CLI shell building in the autoconf bundle.
stephan [Sun, 19 Jan 2025 19:51:47 +0000 (19:51 +0000)] 
Get the CLI shell building in the autoconf bundle.

FossilOrigin-Name: 241cdbc40a2f82df53c149849a103a335b0643a65e229a1e80ab90a0e457bb6b

5 months agoAdd an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner
drh [Sun, 19 Jan 2025 19:14:21 +0000 (19:14 +0000)] 
Add an SQLITE_TESTCTRL_OPTIMIZATION mask that can disable the query planner
heuristics that are designed to help with star queries.

FossilOrigin-Name: fec4ff185a2f3f1bee8f27432206276636cf27365d2d41cd7282f8c0425f2e96

5 months agoInitial work towards converting the autoconf bundle to autosetup. Currently non-funct...
stephan [Sun, 19 Jan 2025 18:58:09 +0000 (18:58 +0000)] 
Initial work towards converting the autoconf bundle to autosetup. Currently non-functional.

FossilOrigin-Name: d7708372ff2fef4bfa61e56dbfbb363cac7685587a61a151497991d9a08bb07f

5 months agoFurther refactoring of auto.def to simplify creation of variant builds like the autoc...
stephan [Sun, 19 Jan 2025 18:32:45 +0000 (18:32 +0000)] 
Further refactoring of auto.def to simplify creation of variant builds like the autoconf bundle.

FossilOrigin-Name: f806c563a29240c709508316846fbe0cb3ed61b68a6c1d9544eb699e30141d8d

5 months agoMinor internal refactoring of auto.def to support the pending autoconf subdir port...
stephan [Sun, 19 Jan 2025 16:26:25 +0000 (16:26 +0000)] 
Minor internal refactoring of auto.def to support the pending autoconf subdir port to autosetup. No functional changes.

FossilOrigin-Name: 01ff37584708f3f79c62c1b5ed8cceab721cf8348a69a65f0559b1ef8845e85b

5 months agoMove some of the auto.def functions into autosetup/sqlite-config.tcl for re-use in...
stephan [Sun, 19 Jan 2025 14:53:45 +0000 (14:53 +0000)] 
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.

FossilOrigin-Name: 2f1e94994f3595baad4045ab05ffee0668059c23ab37a39c25b83c62bfbaea28

5 months agoEnable automatic query-time indexes for WITHOUT ROWID tables.
drh [Sat, 18 Jan 2025 23:44:06 +0000 (23:44 +0000)] 
Enable automatic query-time indexes for WITHOUT ROWID tables.

FossilOrigin-Name: 8534af5b94be9f5b1f02453e1c3b6b3f78a698af91595bdbbfdea00676510116

5 months agoAdd a simple test case (many more are coming soon to TH3). Fix an obsolete without-rowid-autoidx
drh [Sat, 18 Jan 2025 21:19:02 +0000 (21:19 +0000)] 
Add a simple test case (many more are coming soon to TH3).  Fix an obsolete
assert().

FossilOrigin-Name: aa829a131a3431791083cf60d9cf00e7b3c0fafdd39a23e761b629a2287ab875

5 months agoAdd support for automatic query-time indexes on WITHOUT ROWID tables.
drh [Sat, 18 Jan 2025 21:00:19 +0000 (21:00 +0000)] 
Add support for automatic query-time indexes on WITHOUT ROWID tables.

FossilOrigin-Name: 89c4cbd9529081941d7283a401c4a8d71b241f4577ebf6d3eb2ebe5a1cf92f2e

5 months agoWhen cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion...
stephan [Sat, 18 Jan 2025 16:05:38 +0000 (16:05 +0000)] 
When cross-compiling, change the CFLAGS default to exclude -g, per /chat discussion prompted by [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].

FossilOrigin-Name: 4309da2ca5cb99ea81f3034ae3c5809187c0131d21f9f9469ea0d69c941f393e

5 months agoWhen running make install, avoid the -s (strip) flag when cross-compiling, as it...
stephan [Sat, 18 Jan 2025 13:51:01 +0000 (13:51 +0000)] 
When running make install, avoid the -s (strip) flag when cross-compiling, as it only works for the build platform. Reported in [forum:9a67df63eda9925c|forum post 9a67df63eda9925c].

FossilOrigin-Name: 230e49c10e3aa6fe9c487a1e026016a8bf97f7e736e7477d5976d987da5e83cf

5 months agoFor the purpose of the query planner heuristic added by [38db9b5c83], a query
drh [Fri, 17 Jan 2025 23:49:40 +0000 (23:49 +0000)] 
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:/forumpost/d87570a145599033|forum post d87570a1455].

FossilOrigin-Name: 0852c57ee2768224af79910e6f26e70a4962651dae0f8b45cbfc847e6707d7bb

5 months agoEnhance a comment on a test case to add recent context.
drh [Fri, 17 Jan 2025 17:09:42 +0000 (17:09 +0000)] 
Enhance a comment on a test case to add recent context.

FossilOrigin-Name: c2647d1bd16fd46dd03953afee6cad44ce14fa2c36713c487b678d63660bc072

5 months agoTypo fix in speedtest.md.
stephan [Fri, 17 Jan 2025 15:56:16 +0000 (15:56 +0000)] 
Typo fix in speedtest.md.

FossilOrigin-Name: 36027cf340fe2e351c63129d069f9bced090c4a028ffd78d5b8c0f418ad9f230

5 months agoImprovements to the speedtest.tcl script. Add documentation on how to use the
drh [Fri, 17 Jan 2025 15:39:48 +0000 (15:39 +0000)] 
Improvements to the speedtest.tcl script.  Add documentation on how to use the
script.

FossilOrigin-Name: eb3853d08141bf941193e8ecaf991191bb7fb46287818708a84018520eb1835e

5 months agoAdd the test/speedtest.tcl script to simplify performance and size testing.
drh [Fri, 17 Jan 2025 12:32:01 +0000 (12:32 +0000)] 
Add the test/speedtest.tcl script to simplify performance and size testing.

FossilOrigin-Name: ad7b38672656d0336a73bb789ec83f6939fbdae81e21be68e0313006826dc294

5 months agoFix a potential one-byte buffer overrun when reading from the Windows
drh [Fri, 17 Jan 2025 10:39:04 +0000 (10:39 +0000)] 
Fix a potential one-byte buffer overrun when reading from the Windows
console in the CLI. [forum:/forumpost/95e17b8f5c|Forum post 95e17b8f5c].

FossilOrigin-Name: 4d96759694c91301410f53a3f737a049c33e8b259b0954ff659714aff8b21ae8

5 months agospeedtest1: further improvements to the "json" testset.
drh [Thu, 16 Jan 2025 20:46:08 +0000 (20:46 +0000)] 
speedtest1: further improvements to the "json" testset.

FossilOrigin-Name: c4750f7cf7e2188623de8b12e01acf3e3d7dc7b5ea87ac449571eb36f97d842a

5 months agospeedtest1: Improvements to the "json" testset. Better balance in "mix1".
drh [Thu, 16 Jan 2025 20:08:59 +0000 (20:08 +0000)] 
speedtest1:  Improvements to the "json" testset.  Better balance in "mix1".

FossilOrigin-Name: 2cc73c5e08f1a16fe8accf0af6af061e42d27635883d09234516fd470e99bc0a

5 months agoRevamp the "json" testset in speedtest1.
drh [Thu, 16 Jan 2025 17:19:06 +0000 (17:19 +0000)] 
Revamp the "json" testset in speedtest1.

FossilOrigin-Name: d33508836bc88314a205bfa9d80f3ebe695163cf0c46d500ad674535975408fb

5 months agoAdd the "json" test case to speedtest1 and include it in "mix1".
drh [Thu, 16 Jan 2025 14:37:48 +0000 (14:37 +0000)] 
Add the "json" test case to speedtest1 and include it in "mix1".

FossilOrigin-Name: 2db3a3ee37a9d2fe9b94d16d35c24846c37abe73b89cde4dd763e01a2bfaa8b7

5 months agoSpeedtest1 enhancements: (1) Add the ability to scale performance of
drh [Thu, 16 Jan 2025 14:06:29 +0000 (14:06 +0000)] 
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.

FossilOrigin-Name: 85667b3a572bc9afd8c862a0b2c5f47f76ca80d6e61302ca7d7c1b326d3dd578

5 months agowasm: after generating the .js/.mjs file, strip out all of the generated pieces which...
stephan [Thu, 16 Jan 2025 13:10:06 +0000 (13:10 +0000)] 
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.

FossilOrigin-Name: 020d2c7528be6f11a5b2b849d7b2f04e47abe2b0842520ff60eb7defb3768e1c

5 months agoWhen generating the autoconf snapshot, replaces the Libs.private line from sqlite3...
stephan [Thu, 16 Jan 2025 12:15:51 +0000 (12:15 +0000)] 
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:e40b9b424a|forum post e40b9b424a].

FossilOrigin-Name: fe47154799bfefb12eb1209d9ada64ecac38bee1b7c3558d175215a2beba991d

5 months agoReplace use of Emscripten's Module.postRun() with a custom callback so that we get...
stephan [Thu, 16 Jan 2025 09:27:40 +0000 (09:27 +0000)] 
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 [https://github.com/emscripten-core/emscripten/issues/23420|Emscripten ticket #23420].

FossilOrigin-Name: 4863a70ac61ff6f868429f16f0141484ea98f973fde1a9aff879252d0f1dbb6b

5 months agoWhen two indexes have the same cost, use the narrower one (the one with the
drh [Thu, 16 Jan 2025 01:47:03 +0000 (01:47 +0000)] 
When two indexes have the same cost, use the narrower one (the one with the
smaller average on-disk row width).

FossilOrigin-Name: 398559678f2b9a65b245ed73b4d512c4fccc69d42b5a6a1c1b7755a80b69d073

5 months agoCheck-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism
drh [Wed, 15 Jan 2025 21:13:38 +0000 (21:13 +0000)] 
Check-in [da9124fee28c155c] broken the new SQLITE_IOCAP_SUBPAGE_READ mechanism
for inhibiting direct-overflow-read.  This check-in fixes the problem.

FossilOrigin-Name: 113078d555eaf740666680562ebbb04f7d823b72e8b2d553627e54ab3d7bf653

5 months agoTeach tool/stripccomments.c that a backslash immediately preceeding a forward slash...
stephan [Wed, 15 Jan 2025 21:09:19 +0000 (21:09 +0000)] 
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 [https://github.com/emscripten-core/emscripten/issues/23412|the one introduced in emsdk 4.0.0]) to pass through properly. Re-enable comment-stripping in the JS dist builds.

FossilOrigin-Name: db21d6cc9d1c425deffc0e4e92173caf586e6ac66110c71a4930b21e3e7f84b9

5 months agoWork around [https://github.com/emscripten-core/emscripten/issues/23420|a behavior...
stephan [Wed, 15 Jan 2025 20:53:14 +0000 (20:53 +0000)] 
Work around [https://github.com/emscripten-core/emscripten/issues/23420|a behavior change in emsdk 4.0.0] which breaks the load/init timing of the wasm module.

FossilOrigin-Name: 00a750184bcf1a94bf4e7f1d5029a42671e87e2997ae97be07bd900d3702883d

5 months agoWhen choosing between two indexes with the same cost, pick the one with the consider-idx-width
drh [Wed, 15 Jan 2025 20:23:22 +0000 (20:23 +0000)] 
When choosing between two indexes with the same cost, pick the one with the
smaller predicted number of bytes per row.

FossilOrigin-Name: d4bd0d4214551f88f248698fefc821575b722ce5c194d0b3796f572e4704f641

5 months agoVariable names and conditional logic simplified in where.c. These
drh [Wed, 15 Jan 2025 19:30:10 +0000 (19:30 +0000)] 
Variable names and conditional logic simplified in where.c.  These
changes are cosmetic only and do not affect the resuling machine code.

FossilOrigin-Name: dbc2d6a244fdafd208239894dbdd8f139db6ca20dd8f1ed00d87028e0cb60570

5 months agoFix a typo in a wasm makefile var name, noting that this doesn't actually fix anythin...
stephan [Wed, 15 Jan 2025 15:27:02 +0000 (15:27 +0000)] 
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'.

FossilOrigin-Name: 7cfc75a625095e41c3e952d4a209fdbb344df0d3dd9b0103e9e6a986dfe53c89

5 months agoDisable the C-style comment stripper in the JS dist build, as explained in [forum...
stephan [Wed, 15 Jan 2025 14:28:56 +0000 (14:28 +0000)] 
Disable the C-style comment stripper in the JS dist build, as explained in [forum:529c20d344|forum post 529c20d344].

FossilOrigin-Name: a9475e7614f8e44252abf273d0e0522c247df12624e40108ce98ad4aaf320f2d

5 months agoChange the version number to 3.49.0 to begin the next development
drh [Tue, 14 Jan 2025 20:47:23 +0000 (20:47 +0000)] 
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.

FossilOrigin-Name: 8165a3d3a40c5b43275fb4b1cdf57c44a57cd56c514bd2a550deac26a14795eb

5 months agoTrying to remove a warning from some compiler that I do not have access to.
drh [Tue, 14 Jan 2025 16:10:13 +0000 (16:10 +0000)] 
Trying to remove a warning from some compiler that I do not have access to.

FossilOrigin-Name: bc6de90c7049dd429a82d32b186a838f4a21aa7b8a83418eaf0416d19771b41e

5 months agoVersion 3.48.0 major-relase relase version-3.48.0
drh [Tue, 14 Jan 2025 11:05:00 +0000 (11:05 +0000)] 
Version 3.48.0

FossilOrigin-Name: d2fe6b05f38d9d7cd78c5d252e99ac59f1aea071d669830c1ffe4e8966e84010

5 months agoRemove a stray tab character from a comment.
drh [Mon, 13 Jan 2025 13:32:56 +0000 (13:32 +0000)] 
Remove a stray tab character from a comment.

FossilOrigin-Name: 315079b150b47e013e2cde4985bc39d24e0f6f6c6e60f9383fb8ea4ea897c67a

5 months agoGCC 13 has become more quite pedantic about the signature of functions matching the
drh [Mon, 13 Jan 2025 11:28:34 +0000 (11:28 +0000)] 
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.

FossilOrigin-Name: ed83b79100b4345235aec990303c4526874f0c2f8701160c4639a80633ebaf70

5 months agoFix harmless "implicit fall through" warnings that suddenly appeared when
drh [Sat, 11 Jan 2025 16:28:41 +0000 (16:28 +0000)] 
Fix harmless "implicit fall through" warnings that suddenly appeared when
I upgraded to gcc-13.

FossilOrigin-Name: 3e2875dac27de1525d9c78f38ac5f1fc12fec7e1b43dbdf47798b128fae49084

5 months agoBetter job at suppressing harmless scan-build warnings. This time testing
drh [Sat, 11 Jan 2025 14:43:47 +0000 (14:43 +0000)] 
Better job at suppressing harmless scan-build warnings.  This time testing
and working.

FossilOrigin-Name: c847973947de67579fab78a65ecfc90bf59fd5db0b7fa7a9c1abb1fc92213d01

5 months agoFix harmless scan-build warnings.
drh [Sat, 11 Jan 2025 13:59:42 +0000 (13:59 +0000)] 
Fix harmless scan-build warnings.

FossilOrigin-Name: b93af6feb7c0c3af30a47810a7c0e77ce41c386fac164c64bb5871a6c153db7e

5 months agoFix an age-old bug in the lower-level wasm/js helper bits which was (A) caused remova...
stephan [Sat, 11 Jan 2025 09:02:55 +0000 (09:02 +0000)] 
Fix an age-old bug in the lower-level wasm/js helper bits which was (A) caused removal of customized WASM func/argument conversion to siltently fail and (B) triggered a warning in the closure toolchain. Reported in [jaccwabyt ticket c5c296e85a7c01360820|https://fossil.wanderinghorse.net/r/jaccwabyt/info/c5c296e85a7c01360820].

FossilOrigin-Name: 99917a5bb04b5ad6ace95baf86d91e6ce098f9d3001de1a29d3d0b0b817acdce

5 months agoUpdate the makefile so that it puts the amalgamation files in a subdirectory
drh [Thu, 9 Jan 2025 19:57:44 +0000 (19:57 +0000)] 
Update the makefile so that it puts the amalgamation files in a subdirectory
in the amalgamation-zip.
[forum:/forumpost/b8dd1941e1|Forum post b8dd1941e1].

FossilOrigin-Name: cef8e88bedf01dc47012ef1cb878b22117c9966e615edf5a69704486f9cfa56c

5 months agoWhen removing an fts5 in secure-delete mode, defer setting the table version to SECUR...
dan [Thu, 9 Jan 2025 14:10:25 +0000 (14:10 +0000)] 
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.

FossilOrigin-Name: c359e555ceafcaab2ae38074bc4f57cccdc5bc6080d17f82290c09b9e5dd80c2

5 months agoFix another assert() failure in fts5.
dan [Wed, 8 Jan 2025 20:43:03 +0000 (20:43 +0000)] 
Fix another assert() failure in fts5.

FossilOrigin-Name: 6da37893f5b5729ea5fd632e8d98789e867488a67501d4a4dad92f8e7cb6bda0

5 months agoFix a crash in fts5 that could occur if shadow tables are modified or removed.
dan [Wed, 8 Jan 2025 15:54:44 +0000 (15:54 +0000)] 
Fix a crash in fts5 that could occur if shadow tables are modified or removed.

FossilOrigin-Name: c0b691095ae72fc07530777ef6d23688fb4196ce2e0feff14fc3c597c572252d

5 months agoCross-link and otherwise improve the various how-to-compile documents.
drh [Wed, 8 Jan 2025 12:51:28 +0000 (12:51 +0000)] 
Cross-link and otherwise improve the various how-to-compile documents.
No code changes.

FossilOrigin-Name: 5e6ede92afae77ce6023f3b294dc565651631c7976d898d800988f1b3ff2e83f

5 months agoIn the doc/tcl-extension-testing.md document, provide enhanced explanation for
drh [Wed, 8 Jan 2025 12:25:33 +0000 (12:25 +0000)] 
In the doc/tcl-extension-testing.md document, provide enhanced explanation for
why the tcl library needs to be copied into the install directory.

FossilOrigin-Name: cff70c859fff37f886fd622b7335a73836ff8cf15e6cb7aabcff449a7e427fa8

5 months agoFurther refinement to the Tcl extension testing procedure.
drh [Tue, 7 Jan 2025 18:50:19 +0000 (18:50 +0000)] 
Further refinement to the Tcl extension testing procedure.

FossilOrigin-Name: 32b8b078d16b8931afa56e587cf840412c65b68da0bc6fd6280ac773295116cf

5 months agoImprovements to [14b38ae6ab86a314] so that the Tcl interface is better able
drh [Tue, 7 Jan 2025 16:36:47 +0000 (16:36 +0000)] 
Improvements to [14b38ae6ab86a314] so that the Tcl interface is better able
to work with boolean values in both Tcl86 and Tcl90.

FossilOrigin-Name: 4e85343d6107a46682b549667410c296d7f4d17e3ac04ded7357afcbbfbe3e6d

5 months agoFix a memory error in test logic introduced by [8704034254938662].
drh [Tue, 7 Jan 2025 15:39:57 +0000 (15:39 +0000)] 
Fix a memory error in test logic introduced by [8704034254938662].

FossilOrigin-Name: 8a56e98d257e280d308b9fdc26e17e202f00a70fb9a780e30924e87a189fc7f4

5 months agoTypo in the previous check-in.
drh [Tue, 7 Jan 2025 15:00:00 +0000 (15:00 +0000)] 
Typo in the previous check-in.

FossilOrigin-Name: 5872d7a0a7d4959562e1218bbba1115df8b292d980234273d0d38749edf19822

5 months agoEnhancements to the Tcl SQLite extension testing procedures so that they
drh [Tue, 7 Jan 2025 14:55:49 +0000 (14:55 +0000)] 
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.

FossilOrigin-Name: c8972e652ebe62a8583904b5bc1d96b2d598222c037a714c8ff114ca84b52c7a

5 months agoMake the TCL extension aware of the booleanString type within TCL.
drh [Tue, 7 Jan 2025 12:14:32 +0000 (12:14 +0000)] 
Make the TCL extension aware of the booleanString type within TCL.

FossilOrigin-Name: 14b38ae6ab86a314a63ca9513850b43fcc670864f94d03a2706eff469980da88

5 months agoFix a typo in the previous check-in.
drh [Tue, 7 Jan 2025 11:54:43 +0000 (11:54 +0000)] 
Fix a typo in the previous check-in.

FossilOrigin-Name: 7d41885e85b0e2ef28bac34d663af07c35b21ee3e8b14481d2371f623bce681d

5 months agoMinor fixes to tclsqlite.c to promote portability.
drh [Tue, 7 Jan 2025 00:17:54 +0000 (00:17 +0000)] 
Minor fixes to tclsqlite.c to promote portability.

FossilOrigin-Name: dd934f032fa6fc790a951006512e3ed76a5f2930858932918eafdbe3ceec4620

5 months agoEnhance the makefile to make it easier to build from a read-only source tree.
drh [Mon, 6 Jan 2025 23:33:45 +0000 (23:33 +0000)] 
Enhance the makefile to make it easier to build from a read-only source tree.

FossilOrigin-Name: f99a70eca2fd8a54be3a6629dabd62efc623488706eed5e5a1bd0be577ac1acb

5 months agoFix a problem with tool/mksqlite3h.tcl that prevents it from running out of
drh [Mon, 6 Jan 2025 21:36:16 +0000 (21:36 +0000)] 
Fix a problem with tool/mksqlite3h.tcl that prevents it from running out of
a read-only check-out.

FossilOrigin-Name: cb54f0063edd284996b225183b8e35d71ffcd3c0fb4f56a0e316181f1a186d46

5 months agoFix a minor problem with the sqlite3_get_table_printf() test interface.
drh [Mon, 6 Jan 2025 18:32:53 +0000 (18:32 +0000)] 
Fix a minor problem with the sqlite3_get_table_printf() test interface.
No core changes.

FossilOrigin-Name: a0df29c7a3eb4f558aba00598d827643830591def3101a4d5464543527b8d13c

5 months agoAdd test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPP...
dan [Mon, 6 Jan 2025 17:01:35 +0000 (17:01 +0000)] 
Add test case for using both SQLITE_CHANGESETAPPLY_IGNORENOOP and SQLITE_CHANGESETAPPLY_FKNOACTION.

FossilOrigin-Name: b1cc53fa3fb2ac3abeadd3282d8751f4d533315754159f16ca7f7f300ccdd8c8

5 months agoFurther refactoring of the TCL extension test procedure document, for
drh [Sun, 5 Jan 2025 19:58:30 +0000 (19:58 +0000)] 
Further refactoring of the TCL extension test procedure document, for
improved clarity and usability.

FossilOrigin-Name: bcdaef434142973a0805117495e561b2dcd1ec1465cacc9b944a3707291afc0d

5 months agoRefactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0
drh [Sun, 5 Jan 2025 17:16:33 +0000 (17:16 +0000)] 
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.

FossilOrigin-Name: 5281536327d244ba9507548f7ed607e86e59b98a003e63f6da767471411c8ffc

5 months agoFix typo in the tcl-extension-testing.md document.
drh [Sun, 5 Jan 2025 11:40:15 +0000 (11:40 +0000)] 
Fix typo in the tcl-extension-testing.md document.

FossilOrigin-Name: 28150c615cb601dfc9e4f660627228d6a8a715d64c65f7bc77931c9daf8a0dd7

5 months agoImprovements to TCL extension test procedure description. Improvements to
drh [Sun, 5 Jan 2025 11:19:32 +0000 (11:19 +0000)] 
Improvements to TCL extension test procedure description.  Improvements to
the tclextension-list and tclextension-verify makefile targets to suppress
unnecessary output.

FossilOrigin-Name: 3e92fea09af13259d61afd2953fe5f3fc16e3cedfef09e350903aa5299b8e469

5 months agoImprovements to testing and validation of the SQLite TCL extension.
drh [Sat, 4 Jan 2025 20:50:21 +0000 (20:50 +0000)] 
Improvements to testing and validation of the SQLite TCL extension.

FossilOrigin-Name: 9d7597cad4a167aef7688e85513d8695e8d919e41f5cd44909aefee5ddf13345

5 months agoShow the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the
drh [Sat, 4 Jan 2025 20:13:54 +0000 (20:13 +0000)] 
Show the values of $(JIM_TCLSH) and $(VISUALSTUDIOVERSION) in the
output of "nmake tcl-env".

FossilOrigin-Name: 4270abc071ced9e7ec1fed3c387262cc1912e321e37e45e547a1088dbb022702

5 months agoAllow the 2nd argument to ".param set" to use previously bound parameters,
drh [Sat, 4 Jan 2025 19:50:44 +0000 (19:50 +0000)] 
Allow the 2nd argument to ".param set" to use previously bound parameters,
as suggested by [forum:/forumpost/823e1bd746|forum post 823e1bd746].

FossilOrigin-Name: 13a35ad792dc0afe1f7b60230aef392ae01e702972b963d732e332f21848f38b

6 months agoFix a problem in the sessions extension allowing changesets containing foreign key...
dan [Sat, 4 Jan 2025 16:30:05 +0000 (16:30 +0000)] 
Fix a problem in the sessions extension allowing changesets containing foreign key violations to be committed under some circumstances.

FossilOrigin-Name: e09a0c022903d88d5d6de34b2527565ef60c6bb049f2fb42f037e1520abf0f93

6 months agoAdd the document describing test procedures for the TCL extension build
drh [Sat, 4 Jan 2025 15:52:40 +0000 (15:52 +0000)] 
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.

FossilOrigin-Name: 3263db9249444203b7a9a9f2b0be309c74944315dde7ed192366b709fff93f1b

6 months agoAdjust the Windows Makefile.msc so that it can build the tclextension with test-procedures
drh [Sat, 4 Jan 2025 15:51:30 +0000 (15:51 +0000)] 
Adjust the Windows Makefile.msc so that it can build the tclextension with
Tcl8.6 successfully.  Updates to the tcl-extension test procedure document.

FossilOrigin-Name: 0c2cdc632f26d6acac2d508def4ecfcc97462ebcddc20c84f8847e02e42b3a1d

6 months agoAdd new tcl-extension-testing.md document. The Windows side is not yet
drh [Sat, 4 Jan 2025 14:10:45 +0000 (14:10 +0000)] 
Add new tcl-extension-testing.md document.  The Windows side is not yet
working.

FossilOrigin-Name: 9dc805df1b1c26196ca53baa6b1b8c2f7e59e0150d02ead53228c77a63ad40f4

6 months agoAdd comment to the columnIsGoodIndexCandidate() routine to record the results
drh [Fri, 3 Jan 2025 11:51:50 +0000 (11:51 +0000)] 
Add comment to the columnIsGoodIndexCandidate() routine to record the results
of a failed experiment.  No changes to code.

FossilOrigin-Name: 9ee57a30a49d9813bf2669a5d8346f7e018e3fbf1792739951311a8d3a249d45

6 months agoAvoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro...
dan [Fri, 3 Jan 2025 11:22:01 +0000 (11:22 +0000)] 
Avoid using Int32x32To64() with a 64-bit argument in fileio.c - this level of micro-optimization is not really necessary there.

FossilOrigin-Name: 1291b013a8c93e7001fe25783bc98d12f5f7c341d1f728e6852632e18a38af58

6 months agoImprove the treeview output for CteUse objects.
drh [Thu, 2 Jan 2025 21:23:25 +0000 (21:23 +0000)] 
Improve the treeview output for CteUse objects.

FossilOrigin-Name: 2b16d6947ca4a102ddab4d5ba3e340a75e1e5c28e45e874ee5ff52f9b5fb964f

6 months agoImprovements to the display of subqueries in the FROM clause for treeview
drh [Thu, 2 Jan 2025 18:43:29 +0000 (18:43 +0000)] 
Improvements to the display of subqueries in the FROM clause for treeview
output.  (Debug and analysis code only - does not affect production builds.)

FossilOrigin-Name: 4a2d65cdcdd3d21bb7d9ea0efb434484f1b8642c2bb6457db58bc2a5f4fc16e5