]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Sat, 2 May 2026 18:09:18 +0000 (18:09 +0000)]
Idea for a new API that simply retrieves the current authorizer settings.
This might be useful, for example, in a subroutine that wants to run
SQL with temporary changes to the authorizer, but restore the application
settings before returning.
FossilOrigin-Name:
4302c052777f60b42b01503965fe06280ae9278ad06a21c4b6d8c65d3c1ef94b
drh [Sat, 2 May 2026 17:30:33 +0000 (17:30 +0000)]
drh [Sat, 2 May 2026 15:58:28 +0000 (15:58 +0000)]
drh [Sat, 2 May 2026 11:47:22 +0000 (11:47 +0000)]
Close database connections in a timely manner to fix test script problems
on Windows.
FossilOrigin-Name:
068a53865a17d4c2b4ce227fc08a2c019d1dbf31d833842ec08ab5665a3565a3
drh [Fri, 1 May 2026 17:42:15 +0000 (17:42 +0000)]
drh [Fri, 1 May 2026 16:06:21 +0000 (16:06 +0000)]
Harden the recovery extension against SQL injections coming from the
sqlite_schema table of the database being recovered.
FossilOrigin-Name:
9190f1b9b8889e4d80c370db36b916744d5779de0ec51da0369bbe74adb7b931
drh [Fri, 1 May 2026 16:03:51 +0000 (16:03 +0000)]
Check-in [
1786fcd5b4ee6cd9 ] works great and generates correct code, but it
upset UBSAN. This check-in fixes the UBSAN complaint.
FossilOrigin-Name:
7cd76847e8c9b683e39c1063a343288f11b4aa5e9302394fe0c4244d361ee4f1
drh [Thu, 30 Apr 2026 18:23:58 +0000 (18:23 +0000)]
The value for /f and other filename substitutions in SQLITE_PS1 is now
"memory" if open on an in-memory database.
FossilOrigin-Name:
4aac1057eeaf6c29a4893e9c080497c780b0963e810c501532d79eba1b457f27
drh [Thu, 30 Apr 2026 16:52:56 +0000 (16:52 +0000)]
Remove lots of code used to support legacy Windows version (WindowsXP and
before). Use Slim Reader/Writer Locks on Windows for non-recursive mutexes,
since SRWLs are now available on all supported Windows platforms.
FossilOrigin-Name:
6f7a5ff22db10f889596239aae5f6a1130cbdfe72612ceee68cbeb3b86e40227
drh [Thu, 30 Apr 2026 15:41:01 +0000 (15:41 +0000)]
Fix a harmless compiler warning in src/mutex_w32.c.
FossilOrigin-Name:
8de796ca459f2c996937fe1107838b217572636110c8c09e358343385bf17a1b
drh [Thu, 30 Apr 2026 15:33:44 +0000 (15:33 +0000)]
Fix the memdb1.test test module so that it runs correctly on Windows.
FossilOrigin-Name:
9012f8ea7454bbb792b4361ed74d778e02b98ef44a443f9a23a27a4222fda747
drh [Thu, 30 Apr 2026 15:19:09 +0000 (15:19 +0000)]
Change the CLI warning that appears in the header about opening a
in-memory database, to be more readable.
FossilOrigin-Name:
cc64cafdfe0b0965fabaf9d561d9a108c20a3643f71b36e6a6c51fc8f30b82cb
drh [Thu, 30 Apr 2026 15:07:25 +0000 (15:07 +0000)]
Add the /m escape to the CLI prompt string. Use it to show "memory"
in italic for the default prompt for in-memory databases.
FossilOrigin-Name:
1e3c95393044279997833145cb610b98926fb0c8f53ae4fb35e9fcc6c1ded1a2
dan [Wed, 29 Apr 2026 19:14:54 +0000 (19:14 +0000)]
Fix a crash that could occur if the destination database of a backup is
replaced using sqlite3_deserialize() between the call to sqlite3_backup_init()
and the first call to sqlite3_backup_step(). Forum post [forum:
15d82885e2 |
15d82885e2 ].
FossilOrigin-Name:
1f940357f7bb160b583ac5b08ff4e32a9fef353255d032c5a18bcb04416c0f0b
drh [Wed, 29 Apr 2026 16:09:47 +0000 (16:09 +0000)]
Reduce the number of system calls in the os_win.c thunk from 81 down
to 58, as well as other simplifications.
FossilOrigin-Name:
c49521739c961ed5e38424bf26b2e34d8017a85122622ceac5af7398233fe343
drh [Wed, 29 Apr 2026 15:03:01 +0000 (15:03 +0000)]
Further simplifications to the interface to the Windows family of OSes.
An incremental check-in.
FossilOrigin-Name:
f2aa6b66d2a1b5bb2dc8a44788a061a549a846244354df19b44398839578461e
drh [Wed, 29 Apr 2026 14:02:23 +0000 (14:02 +0000)]
Simplify the Windows interface by removing support for various WindowsXP
and WindowsCE. This is a work-in-progress. More to follow.
FossilOrigin-Name:
4dbc4d19c4f3b58d0bedd766cfba65d9624903a5ab0a340eb83ddeec058607ea
drh [Tue, 28 Apr 2026 20:01:03 +0000 (20:01 +0000)]
Updates and simplifications to the mutex implementation on Windows. Uses
Slim Reader/Writer Locks for performance, for non-reentrant mutexes.
Requires WindowsVista or later.
FossilOrigin-Name:
a75aa5400f94531b8ffd00be4580b0578d8d81ba9681fd06b1d9d96a6180994c
drh [Tue, 28 Apr 2026 15:12:40 +0000 (15:12 +0000)]
Attempt to align instances of the sqlite3_mutex object at 128-byte boundaries
to prevent false-sharing in multi-core machines. See the discussion at and
around [forum:/forumpost/2026-03-25T23:15:03Z|forum post 2026-03-25T23:15:03Z].
FossilOrigin-Name:
1786fcd5b4ee6cd9b4780f3687dfaec5b90ef0476e0da266a94e069b98e70514
drh [Tue, 28 Apr 2026 12:49:10 +0000 (12:49 +0000)]
drh [Mon, 27 Apr 2026 14:01:23 +0000 (14:01 +0000)]
Improved detection of when the alternative windows-compatible main() is
needed in the sqldiff.exe utility.
FossilOrigin-Name:
e25b849a603cb08ab888641ff324e9aa129391c4792de86a62c55e9caf84c16e
drh [Mon, 27 Apr 2026 12:43:09 +0000 (12:43 +0000)]
Relax arbitrary length restrictions on some error messages in the CLI.
FossilOrigin-Name:
52f5531ded8e0d3da3dc4d5c9b3d14573041b9446e2c45b5093c958b6c74e0de
stephan [Mon, 27 Apr 2026 12:05:56 +0000 (12:05 +0000)]
Increase a stack-local buffer size to resolve a test regression introduced in [
ff084ae341eab5c ], in which some tests fail a pattern match check if their absolute file names are too long. Resolves [forum:
205f73db1b2806f5 |forum post
205f73db1b2806f5 ].
FossilOrigin-Name:
286fc22c7ca882b0b09de2f1b2a7e0b382af6c498f2f8ad237fe064feaa70d7f
dan [Mon, 27 Apr 2026 11:32:43 +0000 (11:32 +0000)]
Fix a crash that could occur if sqlite3_deserialize() was used to overwrite a database with an open transaction on it. Bug introduced by [
fc42d31d6fca21ab ] on 2018-03-07 and first released in version 3.23.0. This is not a vulnerability as an attacker that can exploit this already has the ability to execute arbitrary code. Forum post [forum:
39134ba029 |
39134ba029 ].
FossilOrigin-Name:
77662cce9aa452ba5820e5f1a864a802763bd83b937cdb16e7025219eff7bd08
stephan [Mon, 27 Apr 2026 06:48:07 +0000 (06:48 +0000)]
Refactor the uint128 type check to consolidate duplicated rules.
FossilOrigin-Name:
362ef7bc00eea180fb3458bd8887021aed54e321901483edc00ad6b23a33d8e5
stephan [Mon, 27 Apr 2026 05:55:38 +0000 (05:55 +0000)]
Feature detection fix for uint128 on RISCV 32-bit, reported in [forum:
f8d1417ce8eb2f22 |forum post 2026-04-26T11:41:01Z] and validated by the OP.
FossilOrigin-Name:
c4a2c20839ef75534d71d928a03ad276bdc488b0baa76c1505f48dc1ff0bcdd1
drh [Sun, 26 Apr 2026 18:35:26 +0000 (18:35 +0000)]
Improvements to temp-file cleanup on close in the CLI.
FossilOrigin-Name:
048c969c34eaaf8c203b996e999a7dbc94c47b4959719af9e6625052520f7135
drh [Sat, 25 Apr 2026 16:17:23 +0000 (16:17 +0000)]
In the CLI, eliminate the 2-second delay before getting the prompt back
after running a ".www" or ".excel". Instead, remember the name of the
temporary file that is to be deleted and delete it later.
FossilOrigin-Name:
4e9ee211ca661fe8978b7f676f33ef962ff5c8177bc7c5ad42b19a2fa4482d90
drh [Sat, 25 Apr 2026 15:05:46 +0000 (15:05 +0000)]
Simplify the modePush()/modePop() implementation in the CLI.
FossilOrigin-Name:
92cad2cd7284d3a969b713336865007da2b0b2a8eef367d4185802174cbd027a
dan [Sat, 25 Apr 2026 14:32:05 +0000 (14:32 +0000)]
Do not run expridx2.test as part of the "journaltest" permutation, as it requires wal mode.
FossilOrigin-Name:
11cfbae735669776c967522294b1606af90b4bd5379e2e1ed722520887b57757
dan [Sat, 25 Apr 2026 14:00:29 +0000 (14:00 +0000)]
Fix a single-byte OOB read that could occur in the session module when concatenating patchsets.
FossilOrigin-Name:
60d7cd625a6160ba1bc60fd00fab2e91e0deff42034c6864107c19330b35ea7a
drh [Sat, 25 Apr 2026 10:45:17 +0000 (10:45 +0000)]
drh [Sat, 25 Apr 2026 00:29:40 +0000 (00:29 +0000)]
Fix a problem in the CLI in which the ".www" command followed by
".dbstat" does not restore the mode to its original setting afterwards.
FossilOrigin-Name:
4a5cac1d00e1fa287ab8ce3437c0152a9f362d72bdb9976889c93f6368b3fd66
drh [Fri, 24 Apr 2026 20:27:42 +0000 (20:27 +0000)]
Fix test cases due to recent CLI default prompt changes. Make sure ANSI
escape codes are recognized on Windows terminals.
FossilOrigin-Name:
22b791e404f0895b0f343b2ce0e169a7ada8578e46a39a9f4bd3a31f81c9853c
drh [Fri, 24 Apr 2026 09:21:25 +0000 (09:21 +0000)]
Improvements to the default prompt for the CLI.
FossilOrigin-Name:
9ab0bb487f78ba5a51cd3b4efcee23b11096e90ebf3add4da18aea657e8de0b6
drh [Thu, 23 Apr 2026 22:15:18 +0000 (22:15 +0000)]
drh [Thu, 23 Apr 2026 20:13:14 +0000 (20:13 +0000)]
Fix harmless compiler warnings. Enhance the CLI prompt mechanism to make
it more easily reusable by other projects, and to add the /h, /H, and /u
escape sequences.
FossilOrigin-Name:
354ce4f5e2a86b621b2058a6372495a5919cf3dc88ce1ed3637642f720c48002
drh [Thu, 23 Apr 2026 20:06:16 +0000 (20:06 +0000)]
Fix a bug in [
dbc1d6f0a3452607 ] that disrupts the display when running
on a Windows console (not redirecting to a file).
FossilOrigin-Name:
75b5df2b0046827e985712b5725488b59667e2cfd171cde9f1194f2917165205
drh [Thu, 23 Apr 2026 16:40:34 +0000 (16:40 +0000)]
Improvements to the #define mechanism in the CLI that allows other programs
that incorporate the shell.c source file to customize some of the
prompt expansions.
FossilOrigin-Name:
e5f8840d11c1863cfc5c0b4a3d16c9ec9ab6ca6ecb7ff1a3a9a237715eed5d30
dan [Thu, 23 Apr 2026 15:54:00 +0000 (15:54 +0000)]
Have testrunner.tcl return a non-zero exit status if one or more tests have failed.
FossilOrigin-Name:
50ddc36d32540b6d98990b5c9a465beb5b68cc31ae3f0ed162f6fe07e7c74e2d
drh [Thu, 23 Apr 2026 15:05:46 +0000 (15:05 +0000)]
New CLI prompt escape sequences: /r, /A, /v, /V, and /D../D.
FossilOrigin-Name:
e7c7acd1a4e5cb0f8e68f119352480c1aa9dd3c2b289c92f88e9e697a2e440e0
drh [Thu, 23 Apr 2026 14:49:21 +0000 (14:49 +0000)]
stephan [Thu, 23 Apr 2026 14:05:36 +0000 (14:05 +0000)]
CLI shell: handle the special case of .prompt "" to not incorrectly report that as an OOM. Reported [https://fossil-scm.org/forum/forumpost/
ca277be73a |in the Fossil SCM forum].
FossilOrigin-Name:
3fa0500b964869c45f7b49717680b791049f7cd8c47a06a337dd22351d2002f9
dan [Wed, 22 Apr 2026 19:38:04 +0000 (19:38 +0000)]
When updating indexes on expressions, omit the update if the new indexed values are the same as the old.
FossilOrigin-Name:
f0fc4e5ec334da3a1db8b0334e23d1911874c96675690da94210b2afb45f7307
dan [Wed, 22 Apr 2026 19:25:12 +0000 (19:25 +0000)]
Add OOM test for the new code on this branch.
FossilOrigin-Name:
685be705a2a69e79de0d581e5bbe9d942133817342121786a551d95d59a4af6c
drh [Wed, 22 Apr 2026 19:12:48 +0000 (19:12 +0000)]
Mark branches that are believed to be unreachable.
FossilOrigin-Name:
18ed9736fbbea762e04b8ad156e83e577e60c5234a5e233540ad8664fe3b379c
dan [Wed, 22 Apr 2026 18:19:24 +0000 (18:19 +0000)]
Instead of adding a branch to OP_IdxInsert, use an extra OP_IfNull when updating indexes on expressions.
FossilOrigin-Name:
5112f96cb1428693614b91bcca78326fccf7289e395a920339676ceeba871e3f
dan [Wed, 22 Apr 2026 17:50:50 +0000 (17:50 +0000)]
Enable the optimization on this branch for indexes on expressions only.
FossilOrigin-Name:
3576b6930436b3149c5033476f70518e9b4adeaeec2538a68b7dc599eb854c47
dan [Wed, 22 Apr 2026 17:31:19 +0000 (17:31 +0000)]
Fix P3/P5 confusion in the comment above OP_IdxDelete.
FossilOrigin-Name:
0fb6ca8e22f355838a02223dd24b34c0669a6cc0b7ac80931c721db72cf5c1c8
dan [Wed, 22 Apr 2026 16:58:36 +0000 (16:58 +0000)]
Detect and omit cases where an index key is being replaced with an identical key.
FossilOrigin-Name:
7a01caf0d0864a462eb81b7643dcf89048f4ae56a29d762f0cfc38066218504f
drh [Wed, 22 Apr 2026 13:41:20 +0000 (13:41 +0000)]
Fix a integer type bug in the previous check-in.
FossilOrigin-Name:
5e1b5ff1c170e94956bf77bd38afcad6369cb9f9333864711212af045281ad0e
drh [Wed, 22 Apr 2026 12:22:32 +0000 (12:22 +0000)]
QRF and the CLI preserve zero bytes when outputing unformatted BLOB values.
FossilOrigin-Name:
dbc1d6f0a3452607e4e92155df0fdb1c5ea4ea5ad1654664f86383faf6c105ef
drh [Tue, 21 Apr 2026 22:19:38 +0000 (22:19 +0000)]
dan [Tue, 21 Apr 2026 20:40:22 +0000 (20:40 +0000)]
Disable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/
077c02e8ed | forum post
77c02e8ed ].
FossilOrigin-Name:
d0d95a39bc211034071746395ee6dbcfbea9d573d27480655391ba9698f7e214
drh [Tue, 21 Apr 2026 20:28:38 +0000 (20:28 +0000)]
Fix the BETWEEN operator so that it propagates the EP_Subquery,
EP_Collate, and EP_HasFunc flags in the expression tree, as it ought.
Fix for the problem reported at
[forum:/forumpost/2026-04-21T19:10:55Z|forum post 2026-04-21T19:10:55Z]
and probably a bunch of other problems too. This has been incorrect
for a long time.
FossilOrigin-Name:
2d1d2947b28f5dcbf4c66b594e176038c4e71e61948a88db565c1cb1212657ce
dan [Tue, 21 Apr 2026 18:07:04 +0000 (18:07 +0000)]
Correctly dequote the constraint name passed to ALTER TABLE DROP CONSTRAINT. This improves upon the partial fix in [
7f5afb12f4 ]. Forum post [forum:/forumpost/
a746b08b87 |
a746b08b87 ].
FossilOrigin-Name:
9387238cb0bb2651c64ecb229072df039577d71fd91546a2f0c94ca9755bf25d
dan [Tue, 21 Apr 2026 16:40:08 +0000 (16:40 +0000)]
Disable optimization of nested EXIST loops. Possible fix for [forum:/forumpost/
077c02e8ed | forum post
77c02e8ed ].
FossilOrigin-Name:
64f0d9eb63a351de12bb9643f1f6390a89f6d95dc81c07f1dc409ee31bae6f83
drh [Tue, 21 Apr 2026 16:07:15 +0000 (16:07 +0000)]
Fix an off-by-one buffer size calculation in the decimal.c extension.
FossilOrigin-Name:
24df42104d5fd1cf974f2bf539fa7515808e21e68d64899c39f5fcf3bee49a48
drh [Tue, 21 Apr 2026 14:39:23 +0000 (14:39 +0000)]
Do not unnecessarily delay opening the database file in the CLI.
FossilOrigin-Name:
ab6ee76c1266b753d0749c63890f40db875536ceb4dd3252cc7a3386e386a0c1
drh [Tue, 21 Apr 2026 12:59:43 +0000 (12:59 +0000)]
Fix another bug in [/info/
e33da6d5dc964db8 |EXISTS-to-JOIN] - this one
having to do with an OFFSET clause of a LIMIT. Reported by
[forum:/forumpost/2026-04-21T10:57:09Z|forum post 2026-04-21T10:57:09Z].
FossilOrigin-Name:
1dd3c6a5e50ac3f617683678223e42f48636c17e58905506c5c74cc4bf05845c
stephan [Tue, 21 Apr 2026 10:19:38 +0000 (10:19 +0000)]
Reformulate how the OPFS async proxy Worker is loaded for the bundler-friendly builds to work around a bug in Vite in which it incompatibly rewrites the Worker's URL arguments. Addresses the discussion at [https://github.com/sqlite/sqlite-wasm/pull/159|npm package PR 159] and patch validated by Jure Rotar.
FossilOrigin-Name:
ec877a30f5c5db30b9154745140744c5cc80d89673d79e50901d7377599cf2b4
drh [Mon, 20 Apr 2026 10:28:19 +0000 (10:28 +0000)]
Fix the fileio extension for Windows builds so that it does not depend on
the sqlite3_win32_utf8_to_unicode() and sqlite3_win32_unicode_to_utf()
routines that are found in the SQLite core.
[forum:/forumpost/2026-04-20T02:02:56Z|Forum post 2026-04-20T02:02:56Z].
FossilOrigin-Name:
fe0414a9a3caf6af67f53a5f3534efd5d4bf4978ebce1c591ef62d6961e55701
drh [Sat, 18 Apr 2026 21:51:32 +0000 (21:51 +0000)]
Fix a harmless compiler warning in test/speedtest1.c.
FossilOrigin-Name:
13f0fd1daaf787bff6eded4a01c2cf47c79e52cf8812bb344995e28c015a4ed1
drh [Sat, 18 Apr 2026 12:31:53 +0000 (12:31 +0000)]
Performance improvement in the substr() and length() SQL functions.
Caution: The new code may give different results for malformed UTF8.
I do not consider that to be a problem by the GI/GO principle.
FossilOrigin-Name:
6124d27a33f4562f40777c2c6318d61709f7b481f23f9ade45064d8ad0700752
drh [Fri, 17 Apr 2026 19:12:27 +0000 (19:12 +0000)]
Fix a test case that started failing due to a change in the help text
for the ".prompt" command of the CLI.
FossilOrigin-Name:
bfe9df1bf4660ce6bdfd11a4f06d32694c93750c7bc0a6432459d9f1089eace4
dan [Fri, 17 Apr 2026 15:09:50 +0000 (15:09 +0000)]
Update interrupt2.test to avoid using Tcl_GetCommandInfo() from within calls to Tcl_DeleteCommand().
FossilOrigin-Name:
1979aa0902a43f20d4e396c5f9b9a49aaf0094d8520bf53ce058bb379a7720ab
drh [Fri, 17 Apr 2026 11:41:33 +0000 (11:41 +0000)]
Help-text and comment fixes in the CLI. Add the output-redir-test.txt
testing script.
FossilOrigin-Name:
ec58a133b4716d4f5a53c38853f8ecdb7a1275b931663ce07c8dc700d845e62e
drh [Fri, 17 Apr 2026 01:50:40 +0000 (01:50 +0000)]
Less error-prone parsing of ".once" options. Fix for the problem reported
by [forum:/info/2026-04-17T01:26:56Z|forum post 2026-04-17T01:26:56Z].
FossilOrigin-Name:
b235a8093734f457c2731af017c99027510d04e5cd1060f5559afbec5409a472
drh [Thu, 16 Apr 2026 19:50:52 +0000 (19:50 +0000)]
Fix testrunner.tcl so that it does not create directories with names
ending in "sqlite3.o" or "sqlite3.lo". Use "sqlite3obj" for those
directory names instead. Otherwise "make clean" gets confused.
FossilOrigin-Name:
a4bf9289c9cdb12b22bfb24e7e2b0243384e9edece12ae3fed14afbfe9b93260
drh [Thu, 16 Apr 2026 19:33:04 +0000 (19:33 +0000)]
Improved comments explaining the logic, and improved diagnostic messages
when testrunner.tcl encounters trouble loading the sqlite3 extension.
FossilOrigin-Name:
8d820b0ccfccff94ed5b7297fa587ac27a74e990f233cfe229da7409ab2e3af8
drh [Thu, 16 Apr 2026 17:07:23 +0000 (17:07 +0000)]
dan [Thu, 16 Apr 2026 16:43:32 +0000 (16:43 +0000)]
Run C-language tests in tests/c/ as part of release test.
FossilOrigin-Name:
e6929022b71c6bff7aa9cfbdb8a5e80499ca856b8c06d4211c55311b48704a08
drh [Wed, 15 Apr 2026 14:41:25 +0000 (14:41 +0000)]
The sqlite3_str_new() interface never returns NULL, even after an OOM.
Code that uses that interface should invoke sqlite3_str_errcode() to see
if an OOM has occurred.
FossilOrigin-Name:
cb910047edc591102dd4ed0d57c863b366981b8aa1d3085d5f95b1fbbabf6c31
drh [Wed, 15 Apr 2026 14:17:58 +0000 (14:17 +0000)]
Bug fix in sqlite3_str_free(): Do not crash if called on an sqlite3_str
object returned from sqlite3_str_new() following an OOM.
FossilOrigin-Name:
92d8ac0c4938e43b00111b43630ecfa91c30e5200ca03937a84f4b50bd1a13b3
drh [Wed, 15 Apr 2026 13:05:43 +0000 (13:05 +0000)]
Add support for the analyze() extension function to the fuzzcheck test
program.
FossilOrigin-Name:
abd94554d24122f0e0c3b7b36e5846e8c7aa0dddbddd9aae35b3f6ae6ab283c0
drh [Wed, 15 Apr 2026 12:47:37 +0000 (12:47 +0000)]
Improve the analyze() extension so that it returns a simple error message
as text (it does not throw an error) if the database is empty or is "temp"
or does not exist.
FossilOrigin-Name:
35379f60922f14d4f6d231ae627df066ad4e4510208bcc244505b9afb279f2fa
drh [Wed, 15 Apr 2026 12:35:23 +0000 (12:35 +0000)]
Fix harmless compiler warnings seen by MSVC in the previous check-in.
Also add ext/misc/analyze.c to the makefile dependencies for the CLI.
FossilOrigin-Name:
5a0ee6e227042e41ac64869c75f961798b252458670c18662175fe5bfa8b87d3
drh [Wed, 15 Apr 2026 12:20:11 +0000 (12:20 +0000)]
Add the analyze() SQL function implemented the ext/misc/analyze.c extension
(but not part of the amalgamation). Make that function available in the
CLI and add a new ".dbinfo" command to the CLI using that function.
FossilOrigin-Name:
4c4988e56df3c668b8891e2a55887a6618f5b84e9111e562b93059ddb9a662dc
drh [Wed, 15 Apr 2026 11:58:54 +0000 (11:58 +0000)]
Add a missing open_db() call in the new ".dbstat" command of the CLI.
FossilOrigin-Name:
a138e44a243466f8679e9652421f8c893a4a1bc0addc86736588d9aee51cf090
drh [Wed, 15 Apr 2026 11:41:50 +0000 (11:41 +0000)]
stephan [Wed, 15 Apr 2026 11:40:13 +0000 (11:40 +0000)]
On platforms which support ./configure --with-icu-config, ensure that 'make tclextension' includes the ICU pieces in the tcl extension. Intended to resolve [forum:
92a88de4b88929fe |forum post
92a88de4b88929fe ].
FossilOrigin-Name:
404fde8bacc3f05254a2fcdb1531a7f53125a7ad45dc6b68a5065c1d0c73b670
dan [Wed, 15 Apr 2026 11:23:30 +0000 (11:23 +0000)]
Avoid a potentially undefined left-shift in the fts5 porter tokenizer.
FossilOrigin-Name:
46a288e43e4c48fca6610bce6a2db418aaa3c8a1dcb115b7a0bfad2063355e58
dan [Wed, 15 Apr 2026 11:07:58 +0000 (11:07 +0000)]
Handle the case where the name of the constraint in an "ALTER TABLE DROP CONSTRAINT" command is quoted. [forum:
8bfbaec404 | Forum post
8bfbaec404 ].
FossilOrigin-Name:
7f5afb12f4a5d35cfe6b95f17d85ce85ce62159515bfe26fb9c67d3ce26b6d4a
drh [Wed, 15 Apr 2026 10:49:14 +0000 (10:49 +0000)]
Compute the average fanout for b-trees of depth 2 or more.
FossilOrigin-Name:
2f8598bb09f32100f22dd1d9465f3fa0f7f8d81f5d67c34de9919708345f090b
stephan [Tue, 14 Apr 2026 23:53:38 +0000 (23:53 +0000)]
Minor doc typo fixes contributed by BrickViking.
FossilOrigin-Name:
c4660ce205919ce0d9262e7fd7879375a72ef65d9e5ac97f19caf5dc36e355aa
drh [Tue, 14 Apr 2026 23:19:02 +0000 (23:19 +0000)]
Code simplifications. Return NULL is the specified SCHEMA does not exist.
FossilOrigin-Name:
953969c88149ea2f589942b98a0a96d907956319e5aa09e2d5a3ae76d3e7d70a
dan [Tue, 14 Apr 2026 20:18:54 +0000 (20:18 +0000)]
Handle a special case of a corrupt changeset in sqlite3changegroup_add().
FossilOrigin-Name:
eba625f917935437e3f366197df1c6717c7120ce0418a0cbac1d2024b2235091
dan [Tue, 14 Apr 2026 20:17:41 +0000 (20:17 +0000)]
Have the session module detect some corrupt changesets earlier.
FossilOrigin-Name:
0de91ff0d798cff21289d893cc441b89fc37b051d5cdf611d92d3ae2bc41cdf2
drh [Tue, 14 Apr 2026 20:17:03 +0000 (20:17 +0000)]
Merge trunk enhancements and fixes into the analyze-sql-func branch.
FossilOrigin-Name:
bb4a9beac87796b4186efce416bf03f840041bc588be6702c5a444d643df684e
drh [Tue, 14 Apr 2026 20:07:29 +0000 (20:07 +0000)]
Various minor tweaks and refinements to the analyze() function.
FossilOrigin-Name:
48d94e72eaec443011dd1f7a7264e5222c05bb515c84deaf20ed4195b74d45ff
dan [Tue, 14 Apr 2026 20:02:49 +0000 (20:02 +0000)]
Handle a special case of a corrupt changeset in sqlite3changegroup_add().
FossilOrigin-Name:
49b3bac482c831f503c7f90c35959e7ea731950e991baba86b2ab95987d2539b
drh [Tue, 14 Apr 2026 19:36:33 +0000 (19:36 +0000)]
Implementation of the analyze() SQL function is now mostly complete.
FossilOrigin-Name:
1ca0386ab2df0d88ed52941469d459114f483ecf6b7e4691bcc32e909636cb7d
drh [Tue, 14 Apr 2026 19:02:40 +0000 (19:02 +0000)]
Much, but not all, of the report generation is added. An incremental check-in.
FossilOrigin-Name:
289fefc3edfeecb06dc11897d3ff24763fd9e25db44e369eeec29b9ed3de5ccc
dan [Tue, 14 Apr 2026 18:12:09 +0000 (18:12 +0000)]
Ensure c-tests use the locally built sqlite3.h file, not the system copy.
FossilOrigin-Name:
2d81ee65ffbed30fd98bdda96dc79c1929c73f806cea3c9e4c244b618980b202
dan [Tue, 14 Apr 2026 18:08:30 +0000 (18:08 +0000)]
In RBU vacuum commands, do as SQLite does and ignore any trailing SQL statements in the sql column of the sqlite_schema table.
FossilOrigin-Name:
cf7dad1b105ab35cd7180efec735b7cbeaf42b8d53dfec5582b63cd121c3425c
drh [Tue, 14 Apr 2026 18:06:41 +0000 (18:06 +0000)]
drh [Tue, 14 Apr 2026 13:18:04 +0000 (13:18 +0000)]
Further fixes and clarifications. Now ready to start generating the
actual report.
FossilOrigin-Name:
037a0e586c4aa81a53aea164080e739f9d5b87197d04fdd68feb0ab5eb01020b
drh [Tue, 14 Apr 2026 12:46:12 +0000 (12:46 +0000)]
Further improvements to error messages and robustness.
FossilOrigin-Name:
45917c1124310fd77daca47865959d3261154f7b0c6771d3689e6d345a3fd153
drh [Tue, 14 Apr 2026 12:23:11 +0000 (12:23 +0000)]
drh [Tue, 14 Apr 2026 11:25:22 +0000 (11:25 +0000)]
Initial prototype implementation of a new run-time loadable SQL function
to do approximately the same work as sqlite3_analyze.
FossilOrigin-Name:
03934b5a6c88a97117a4743a68ee36d30bcbdcebcf11342d30ac42daf9f10874