Commit Graph

  • e326d6eff0 Do not use an index expression to evaluate a constant expression, as that uses unnecessary disk access and might actually give incorrect results if the expression was moved outside of the indexed loop. The error condition arose in check-in [44200596aa943963] for version 3.41.0 and was first reported 3.5 years later by [bugs:/info/2026-10-11T19:26:40Z|Bug 2026-10-11T19:26:40Z]. drh 2026-10-12 10:24:09 +00:00
  • 891eb44d4d Minor hardening of the fossil delta extension against malformed deltas. Based on suggestions from Dan Mestas. stephan 2026-10-12 09:49:25 +00:00
  • 0f94fa05c0 Update test/fossildelta.sql for output expectation changes. stephan 2026-10-12 09:36:07 +00:00
  • d67fe4cc45 Fix a minor typo in a comment. drh 2026-10-12 07:54:30 +00:00
  • c5115c7770 Merge fixes from branch-3.54 drh 2026-10-12 07:37:25 +00:00
  • 03e00d6b84 Do not allow the json_valid() routine to use a cached (and possibly edited) copy of the JSON. It needs to parse the JSON for itself. [bugs:/info/2026-10-11T18:32:23Z|Bug 2026-10-11T18:32:23Z]. drh 2026-10-11 23:06:04 +00:00
  • 50575da52c Another fix to the order-by-subquery optimization of check-in [7a0cdc7edb704a88]. Trouble reported by [bugs:/info/2026-10-11T17:00:56Z|Bug 2026-10-11T17:00:56Z]. drh 2026-10-11 18:38:57 +00:00
  • 513c19fa38 Fix a problem in the query flattener associated with RIGHT JOIN, as reported by [bugs:/info/2026-10-11T16:49:00Z|Bug 2026-10-11T16:49:00Z]. This problem surfaced after the fix to [forum:/info/2025-08-21T14:14:03Z|Forum post 2025-08-21T14:14:03Z] at check-in [e0beda7ffe92abf6]. Before that, the query would not parse. drh 2026-10-11 17:44:08 +00:00
  • 6e35c19f17 Merge branch-3.54 fixes into trunk. drh 2026-10-10 19:19:12 +00:00
  • d85a80711c Back out a minor performance optimization associated with sqlite3VdbeMakeReady() as it has been found to not work correctly on some 32-bit builds. [bugs:/info/2026-10-10T18:05:46Z|Bug 2026-10-10T18:05:46Z] drh 2026-10-10 19:11:52 +00:00
  • e892084680 In the CLI, disallow any use of the fileio extension in --safe mode. [bugs:/info/2026-10-10T13:15:05Z|Bug 2026-10-10T13:15:05Z] drh 2026-10-10 18:40:16 +00:00
  • a27bcfe21c Fix a vec1 problem where rounding errors when assigning vectors to centroids could cause delete operations to fail. dan 2026-10-10 18:06:06 +00:00
  • 4c7729af99 New extension ext/misc/optname.c provides the canonical mapping between optimization bitmaps and optimization names. This gives a single point of edit when there are changes. Used by the CLI, by testfixture, and by TH3. drh 2026-10-10 17:40:46 +00:00
  • 31e3b6ff45 Update vec1 integrity-check method to tolerate small rounding errors when checking that a vector has been assigned to the correct centroid. dan 2026-10-10 16:05:09 +00:00
  • a32ed5cef2 Minor refinements to the TreeTracker (aka "JoinMiss") optimization. drh 2026-10-10 12:14:43 +00:00
  • d76e14d85e Add comments to help remind developers to keep the table of optimization disable bit values in sync with the CLI and with TH3. drh 2026-10-10 00:11:38 +00:00
  • 265bd6339f The code for sqlite3_analyzer is still in the tree, and you can still build it using "make sqlite3_analyzer" but it does not get built as part of "make tool-zip" and there is no mention of it in the README files and similar. drh 2026-10-09 23:18:07 +00:00
  • fc96a3c453 Add the tree-tracker optimization. drh 2026-10-09 21:05:47 +00:00
  • 6e55a61a68 Fix some problems with handling corrupt meta-value arrays in vec1. dan 2026-10-09 19:12:32 +00:00
  • 012589ecab Bring the tree-tracker branch up-to-date with trunk. tree-tracker drh 2026-10-09 18:44:58 +00:00
  • 0a8c82266c Improved error handling in the ".import" command of the CLI. [forum:/info/2026-10-09T17:57:07Z|Forum post 2026-10-09T17:57:07Z]. drh 2026-10-09 18:34:26 +00:00
  • 95a64c6528 Bump the version number to 3.55 to begin the next development cycle. drh 2026-10-09 18:11:52 +00:00
  • 581f55819c Start a new branch to receive patches for the 3.54 release. Put all bug fixes that will go into a patch release on this branch. The plan it to periodically merge the branch into trunk, rather than cherrypicking from trunk to branch as has been done before. drh 2026-10-09 18:11:04 +00:00
  • 6932c59ee5 Version 3.54.0 version-3.54.0 major-release drh 2026-10-09 15:46:58 +00:00
  • 039ef9acc9 Fix a typo in a comment. No changes to code. drh 2026-10-09 14:40:03 +00:00
  • add2a9e88f Merge the latest trunk enhancements into the reuse-schema branch. drh 2026-10-09 13:26:19 +00:00
  • 96f4a40f6e Merge the latest trunk enhancements into the bedrock branch via wal2 drh 2026-10-09 12:24:06 +00:00
  • 476d1e2c0e Merge the latest trunk enhancements into the wal2 branch drh 2026-10-09 12:01:42 +00:00
  • 8a1edc2f33 Merge the latest trunk enhancements into the begin-concurrent branch drh 2026-10-09 12:01:05 +00:00
  • 0e62f142b7 In the CLI, add comments to internal SQL functions making it clear that those functions are subject to change and removal at any time, lest people come to depend on them. No changes to code. drh 2026-10-09 11:47:51 +00:00
  • fdc06f3643 Fix a build script problem causing generated file sqlite3-all.c to #include "sqlite-10.c" instead of "sqlite-A.c". dan 2026-10-09 11:22:17 +00:00
  • 9cba46343e Remove the OP_IfNotOpen opcode. The OP_IfNullRow opcode is sufficient to get the job done. This is a follow-up to [e71b0465b9fa13db]. drh 2026-10-08 23:59:13 +00:00
  • bfb858c596 Ensure the join flags on the parent are set correctly when flattening UNION ALL sub-queries that include branches with RIGHT joins. Report [bugs:/info/2026-10-08T15:27:33Z | 2026-10-08T15:27:33Z]. dan 2026-10-08 19:34:24 +00:00
  • d0fe192fa1 Disable the "expr IN (const)" to "expr=const" optimization of "const" has a COLLATE clause, as using the collating on "=" would give the wrong answer. [bugs:/info/2026-10-08T12:36:41Z|Bugs 2026-10-08T12:36:41Z] drh 2026-10-08 19:06:55 +00:00
  • f19a90c569 Improvements to the display of DDL SQL statements in the CLI and in the sqldiff command-line tool in order to close comments and similar in the case of a corrupt schema, and avoid possible SQL injection attacks. ANT-2026-9VFH4DZS. drh 2026-10-08 18:34:12 +00:00
  • 28e05e55f6 Avoid clearing unrelated join related expression flags when processing window function queries. Report [bugs:/info/2026-10-08T15:38:26Z | 2026-10-08T15:38:26Z]. dan 2026-10-08 17:57:48 +00:00
  • ab1268f758 Fix test script errors causing problems on windows. dan 2026-10-08 16:17:45 +00:00
  • fd6452aff8 Make the sqlite3_incomplete() SQL function available in debugging builds of the CLI, for testing. drh 2026-10-08 13:26:45 +00:00
  • 64c2f58d73 Disable legacy "go" and "/" command terminator options in the CLI unless compiled with -DSQLITE_SHELL_LEGACY_COMMAND_TERMINATOR. ANT-2026-FE9980M1 and ANT-2026-G9MMWYGM. drh 2026-10-08 12:09:35 +00:00
  • 82fda1d99a Sanitize "*/" in tables names of the output of the .diskused command in the CLI, and in sqlite3_analyzer, so that it doesn't prematurely close the comment. ANT-2026-XQM1QD48 drh 2026-10-08 10:55:33 +00:00
  • 97048e902c Update check-in [e71b0465b9fa13db] so that it does not try to to generate an OP_NullRow opcode for cursors of an IN operator that do not actually exist. drh 2026-10-08 09:57:08 +00:00
  • 74675a9e87 Assign the correct encoding to the BLOB values read from an overflow page. [bugs:/info/2026-10-07T15:44:40Z|Bug 2026-10-07T15:44:40Z] drh 2026-10-08 03:28:50 +00:00
  • 644fa62518 Fix processing of LEFT JOIN when the right operand is controlled by an IN loop. [bugs:/info/2026-10-07T23:22:09Z|Bug 2026-10-07T23:22:09Z]. drh 2026-10-08 02:55:50 +00:00
  • b0db2db988 Improved escaping of filenames with unusual characters sent over the SSH link by the sqlite3_rsync utility program. ANT-2026-31X9HVRR. drh 2026-10-07 23:07:55 +00:00
  • aa49b4609a Mark vec1 training function vec1_train() as SQLITE_DIRECTONLY, on the grounds that it sometimes prepares and executes SQL statements based on user-supplied arguments. dan 2026-10-07 21:12:50 +00:00
  • 1ffe6567e8 Include a work-around of the Microsoft "WorstFit" bug on Windows builds of the sqlite3_rsync utility program. ANT-2026-H5TXKR5J. drh 2026-10-07 17:05:09 +00:00
  • 5af1b822f5 Doc-only tweaks in main.mk. No build changes. stephan 2026-10-07 15:45:48 +00:00
  • 7e3819f40d When calculating TCLLIBDIR from the configure script, filter out //zipfs: paths. Tcl9's (file isdir) returns true for those but they are not usable for our purposes, causing (make install DESTDIR...) to install tclsqlite3 under /zipfs. main.mk's counterpart to this piece already does that filtering by virtue of the shell's (test -d) behaving more conventionally. stephan 2026-10-07 12:50:08 +00:00
  • 72d5308b8e Merge the latest trunk enhancements into the reuse-schema branch drh 2026-10-07 12:42:39 +00:00
  • dde9873e57 Merge the latest trunk enhancements into the bedrock branch via wal2 drh 2026-10-07 12:06:18 +00:00
  • da519e68f3 Merge the latest trunk enhancements into the wal2 branch. drh 2026-10-07 11:58:22 +00:00
  • c12c6496a0 Merge trunk enhancements into the begin-concurrent branch. drh 2026-10-07 11:44:58 +00:00
  • 9d50c7ebfc Fix the expansion of "TABLE.*" so that it works the same as PostgreSQL when TABLE is the left operand of a RIGHT JOIN USING. [bugs:/info/2026-10-07T02:56:24Z|Bug 2026-10-07T02:56:24Z] drh 2026-10-07 10:41:59 +00:00
  • caa0b5886e In the treeview display for Expr, show TK_ASTERISK nodes. Debugging logic only - not used in production builds. drh 2026-10-07 10:07:16 +00:00
  • 9f05c6e66b Fix the implementation of O_TMPFILE so that it actually works. drh 2026-10-06 18:52:47 +00:00
  • 6222fff3a9 In the CLI, further improvements to delayed temp-file deletion so that the test/output-redirect-test.txt script works even better. drh 2026-10-06 14:34:02 +00:00
  • bf45b5e6ab Fix to the time-delay temporary-file deletion logic in the CLI, added by [4e9ee211ca661fe8] but never fully debugged. Now working with the test/output-redir-test.txt test script. drh 2026-10-06 11:49:24 +00:00
  • cd47f23e37 Increase version number returned by vec1_info() to "0.8". Also fix some warnings in vec1.c. dan 2026-10-06 11:13:01 +00:00
  • 77dd26bbed Fix a case causing infinitely recursive calls to vec1.xSavepoint. dan 2026-10-06 10:30:12 +00:00
  • a3426a5bcc Fix the build for SQLITE_OMIT_WSD. drh 2026-10-06 09:30:23 +00:00
  • 466e0851d9 When a 3-byte cell on the leaf of an index page, which has a reported size of 4, is moved up to an intermediate page due to a DELETE, the 4-byte page number is added. The cell should should become 7, not 8. If it becomes 8, then the fragment count on the page header goes off by one. This is technically corrupt, but is easily fixed with VACUUM. [bugs:/info/2026-10-05T19:18:18Z|Bug 2026-10-05T19:18:18Z]. This issue has been in the code for at least 12.5 years. drh 2026-10-05 22:16:16 +00:00
  • 40f8f74946 OPFS SAHPool VFS: fix an improbable corner case in which the VFS's in-memory state and its on-disk state could differ with regards to availability of a given SAH if a write failure happens at one very specific point during de-registration of the SAH. Addresses [bugs:432f260aa7|bug report 2026-10-05T17:51:35Z]. wasm-post-3.54 stephan 2026-10-05 20:26:24 +00:00
  • e2851bb88e Merge trunk into branch wasm-post-3.54. stephan 2026-10-05 20:04:38 +00:00
  • df7e35ba28 Handle temp triggers attached to databases clobbered by sqlite3_deserialize() in the same way as those attached to DETACHed databases. branch-3.53 dan 2026-10-05 18:11:38 +00:00
  • c62b4abb99 Handle temp triggers attached to databases clobbered by sqlite3_deserialize() in the same way as those attached to DETACHed databases. dan 2026-10-05 18:07:26 +00:00
  • b642a1d56d Ensure that deserializing into a database expires existing prepared statements. dan 2026-10-05 17:51:16 +00:00
  • 6a385f1d57 Merge the latest trunk fixes into the tree-tracker branch, especially to seal in the cherrypick made necessary by me committing a trunk change to this branch earlier. drh 2026-10-05 17:36:51 +00:00
  • 95170adc37 Fixes to sqlite3_incomplete() so that it does not appear to presume a trailing newline if there is none. [forum:/info/2026-10-05T16:22:33Z|Forum 2026-10-05T16:22:33Z] drh 2026-10-05 17:32:25 +00:00
  • 2b52aab1c1 Fixes to sqlite3_incomplete() so that it does not appear to presume a trailing newline if there is none. [forum:/info/2026-10-05T16:22:33Z|Forum 2026-10-05T16:22:33Z] drh 2026-10-05 17:27:34 +00:00
  • 8a91f5484c Do not run new virtual table tests in memdb1.test for SQLITE_OMIT_VIRTUALTABLE builds. dan 2026-10-05 17:25:06 +00:00
  • 5ee733befe Allow windows clients to open and recover a wal mode database even if an old client still has the *-shm file mapped. Forum post [forum:/info/2026-10-05T14:07:31Z | 2026-10-05T14:07:31Z]. dan 2026-10-05 17:11:27 +00:00
  • f0c7055db7 Omit the -r command-line option from Lemon. That does not affect SQLite. [forum:/info/2026-10-05T15:11:11Z|Forum 2026-10-05T15:11:11Z]. drh 2026-10-05 15:20:48 +00:00
  • 46545d6d15 Merge the latest trunk enhancements into the tree-tracker branch. drh 2026-10-05 14:26:15 +00:00
  • 45cd455d79 Update test cases so that they work for configuration that use -DSQLITE_MAX_EXPR_DEPTH=0. drh 2026-10-05 14:22:13 +00:00
  • 70fdddaed0 Ensure that eponymous virtual table objects are not left with dangling schema pointers if the main database is overwritten using sqlite3_serialize(). dan 2026-10-05 14:13:52 +00:00
  • 6e20be1c58 Ensure that eponymous virtual table objects are not left with dangling schema pointers if the main database is overwritten using sqlite3_serialize(). dan 2026-10-05 14:03:54 +00:00
  • 8532bf12f4 Correctly rollback "OR REPLACE" changes following a "datatype mismatch" error. [bugs:/info/2026-10-05T07:15:40Z|Bug 2026-10-05T07:15:40Z]. drh 2026-10-05 13:27:07 +00:00
  • eff50a067c Prevent the expression generated by the count-of-view optimization from getting too deep and causing a CPU stack overflow. [bugs:/info/2026-10-04T05:34:47Z|Bug 2026-10-04T05:34:47Z] drh 2026-10-05 12:18:23 +00:00
  • 4cf3766d09 Ensure that when a value that may be stored without data loss as an integer is stored in a column with REAL affinity, the values passed to the preupdate-hook are of type SQLITE_FLOAT, not SQLITE_INTEGER. Report [bugs:/info/2026-10-04T16:18:21Z | 2026-10-04T16:18:21Z]. dan 2026-10-05 11:29:02 +00:00
  • 1ad569d147 Ensure that it is not a constraint violation if a CHECK constraint that evaluates to NULL for one or more existing rows is added to a table using ALTER TABLE. Report [bugs:/info/2026-10-05T07:36:38Z | 2026-10-05T07:36:38Z]. dan 2026-10-05 10:54:29 +00:00
  • 996ded6c48 Raise a "nested too deep" error if the number of cursors consumed when resolving a CTE name exceeds SQLITE_LIMIT_EXPR_DEPTH. [bugs:/info/2026-10-04T05:35:14Z|Bug 2026-10-04T05:35:14Z] drh 2026-10-05 10:41:45 +00:00
  • e6ff280c83 Limit the depth of recursion for CTEs using SQLITE_LIMIT_EXPR_DEPTH. [bugs:/info/2026-10-04T04:58:58Z|Bug 2026-10-04T04:58:58Z]. drh 2026-10-05 09:32:24 +00:00
  • d54522a5b8 Fix expression tree depth calculations for COLLATE. [bugs:/info/2026-10-04T04:50:56Z|Bug 2026-10-04T04:50:56Z] drh 2026-10-04 21:54:17 +00:00
  • 8364e34cbd Improve support for --with-tcl in cross-compilation environments, as discussed in [forum:fe9e99eb27c8c2ba|forum thread 2026-08-15T18:21:17Z]. stephan 2026-10-04 19:51:51 +00:00
  • e4e1b4a464 When using --with-tcl and friends during cross-compilation, emit a warning that tclConfig.sh will not be used. Addresses [forum:9771d82cd0cd7923|forum post 2026-10-04T17:25:09Z]. Normalize TCL to Tcl in nearby docs and help text because that's how tcl-lang.org types it. cygwin-msys-tclsh-forum-fe9e99eb stephan 2026-10-04 19:47:43 +00:00
  • 66b901abbb Prevent char() and unistr() from generating non-unicode codepoints. non-unicode drh 2026-10-04 18:47:00 +00:00
  • 52a8a406eb Merge trunk into this branch. stephan 2026-10-04 18:24:04 +00:00
  • e8cbe2c96a In QRF, add the zero-pad flag to the default floating-point format in output modes that render JSON or INSERT, so that infinities are shown as 9e999 or similar instead of as "Inf". [bugs:/info/2026-10-04T05:35:43Z|Bug 2026-10-04T05:35:43Z] drh 2026-10-04 16:23:01 +00:00
  • cb0a13c7d1 Avoid truncation of a 64-bit value into 32-bits when it is the N parameter to the geopoly_regular() function. drh 2026-10-04 15:41:24 +00:00
  • 47a64b8639 In the geopoly extension, any polygon with 16,777,216 or more vertexes is considered malformed. So the number of edges must be between 4 and and 16,777,215. [bugs:/info/2026-10-04T04:58:23Z|Bug 2026-10-04T04:58:23Z]. drh 2026-10-04 15:23:09 +00:00
  • 5be47b15c4 Adapt wasm build for emcc's deprecation of-sMEMORY64=1 and -sWASM_BIGINT=1. Enable emcc -sASSERTIONS for fiddle at the suggestion of an emcc OOM error, as that flag makes such errors more informative. stephan 2026-10-04 12:10:08 +00:00
  • 390c658c6e Make no changes to the busy timeout if the argument to "PRAGMA busy_timeout" is too large. [bugs:/info/2026-10-04T00:05:36Z|Bug 2026-10-04T00:05:36Z]. drh 2026-10-04 10:49:15 +00:00
  • ccbdec8444 Fix some formatting issues in test program vec1bench.tcl. dan 2026-10-03 15:54:28 +00:00
  • 11e6caf066 Fix a test case in rbuvacuum.test that was assuming SQLite ignored trailing SQL stored in a db schema. As of [e21c5bc59a] this is not true. dan 2026-10-03 15:29:06 +00:00
  • 2f77d50f7e Fix test cases added by [e21c5bc59ae66173] so that they work with in-memory configurations. drh 2026-10-03 10:45:03 +00:00
  • 49437882ed Enhance the sqlite3_incomplete() interface so that it returns SQLITE_EMPTY if the input consists purely of whitespace and comments. Fix bugs in the continuation prompt mechanism of the CLI discovered while making this enhancement. drh 2026-10-03 09:53:15 +00:00
  • cb547ab3e9 Update the CLI and the sqldiff utility program to use "COLLATE nocase" when comparing table names in sqlite_schema. Add the --unsafe flag to sqldiff so that it can attempt to process corrupt database files. Changes inspired by ANT-2026-YKVW6RS4. drh 2026-10-02 20:18:07 +00:00
  • 61978d90eb Do not allow surplus SQL text to come after the CREATE statement in the sqlite_schema.sql field. Any such text is flagged as an error. However, the schema will still work if PRAGMA writable_schema is engaged. drh 2026-10-02 19:56:59 +00:00
  • ac5f698ccb Fix the "sqldiff" utility so that when using the --primarykey option on a table that has a PRIMARY KEY with redundant columns, it does not overflow the array of PRIMARY KEY column names. Bug discovered by Anthropic as ANT-2026-Y36XS4M7. drh 2026-10-02 18:47:27 +00:00
  • cb5651e46d Fix integrity-check fails that would occur if the database contained a contentless fts4 table. Report [bugs:/info/2026-10-02T12:22:03Z | 2026-10-02T12:22:03Z]. dan 2026-10-02 14:33:50 +00:00