drh
8c4e315e19
Add two new JSON functions: json_array_insert() and jsonb_array_insert().
...
Patterned after the json_array_insert() function of MySQL.
[forum:/forumpost/2026-01-17T10:40:39z|Forum thread 2026-01-17T10:40:39z].
FossilOrigin-Name: c1e55132410a80d37bad30e4ddecc7a98fad92a68b436880324998af1cee37ae
2026-01-19 11:44:59 +00:00
drh
4720c16223
Raise an error if any PATH argument to json_array_insert() is not the path
...
of an array element. Add some test cases for json_array_insert().
FossilOrigin-Name: 96b7d2c60a3f8a9f9d69313bad599a3a5ad335cb382263e4254e2d20929d5e55
2026-01-17 19:01:37 +00:00
drh
6f3a679a7d
Add new SQL function: json_array_insert(). Suggested in
...
[forum:/forumpost/2026-01-17T10:40:39z|forum thread 2026-01-17T10:40:39z].
This check-in seems to work, but contains no test cases. Also, no error
is raised if the PATH does not reference an array. Prototype only.
FossilOrigin-Name: d6c82c8248f8b1ce3d2c01a92e7d1058beac2b2ccac3b122a2cd385c77dc76df
2026-01-17 14:23:28 +00:00
dan
4b9def1903
Fix further problems with deleting from corrupt fts5 databases in secure-delete mode.
...
FossilOrigin-Name: f8f89d2e10f06b54acf58a3b0543aef749c3d2b65670d4cc71530dea7997651e
2026-01-16 20:04:04 +00:00
drh
9dff6ac96e
Try to prevent false positives in fuzzinvariants.c due to scalar subqueries.
...
FossilOrigin-Name: c20be882a62e75abc50fd2dcae26ebbe83a01f09369525392fa22223627a04ea
2026-01-16 17:48:46 +00:00
drh
4dd1a202de
The optimization at [8bdda827a3d26800] is incorrect for the case where one
...
of the two expressions has been commuted such that the collating sequence
has changed. This check-in fixes the problem. Problem reported by
[forum:/forumpost/2026-01-16T11:35:28Z|forum post 2026-01-16T11:35:28Z].
FossilOrigin-Name: 9d8fb7a9e23d5ef76d05824401976247debe51be6f658f132609257a068a73de
2026-01-16 15:53:20 +00:00
drh
cd8aee7946
Change the copyright on the tool/dbtotxt.c source code file to the
...
standard SQLite blessing.
FossilOrigin-Name: 766c89e009578aa5c1a92cbb2dcc34b3529cf4dd6157f07c84f08470d81942a9
2026-01-16 12:13:42 +00:00
dan
90942efd21
Fix an error in new test script fts5corrupt9.test.
...
FossilOrigin-Name: a5918835e172fd4eda6511d297b61368952d617eac33950b67368671e3bd40fe
2026-01-15 17:17:00 +00:00
dan
bcc496e526
Add extra test for handling corrupt delta records in rbu.
...
FossilOrigin-Name: 7dba05100fbef3614e6ee8eff39dab7a4713550e5672c2f6cf8f4b490a96aa25
artiphishell
2026-01-15 17:00:58 +00:00
dan
ce83fd80ad
Fix a buffer overrun that could occur when deleting rows in secure-delete mode from a strategically corrupted fts5 database.
...
FossilOrigin-Name: 1e66d6e3276cc6aab4d002a1df13b044e61f3946322bf97cac06d98dbb68e433
2026-01-15 16:09:35 +00:00
drh
43eb1d4d22
Adjust the output of the fuzzcheck test program so that testrunner.tcl can
...
capture the number of tests run even when the --slice option is used.
FossilOrigin-Name: dddaeff4ce552f3aa57cc6e18ed35051138b591338242df5f3af39e24006a834
2026-01-14 19:22:36 +00:00
dan
abdfd3312a
Update sessions module so that it takes the db mutex before, instead of just after, opening a savepoint when generating a changeset.
...
FossilOrigin-Name: 41bbd13d737d2b7879d906b6fa76df42c6ee142f1a7acdafd26da0063bc90baf
2026-01-14 17:52:27 +00:00
dan
c1975b6a6f
Improve some of the documentation comments for the new code on this branch.
...
FossilOrigin-Name: f352485db45a1280f91ec76f661b6dd50bb1d564b74bdff474c92e928860a47d
2026-01-14 17:02:22 +00:00
dan
de88171c4c
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: fae9f376b74ae688dbdb5c0838a38427258d3d14c29c5346a3549e56db79961a
2026-01-14 16:01:28 +00:00
dan
613cf76c2f
Add tests for edge cases in the new code on this branch.
...
FossilOrigin-Name: cd115f0f4437bf254058e40d70ba4e82e87227d2752695aa18f8431c3abc5c0b
2026-01-14 15:27:26 +00:00
drh
e5fba7f094
Guard against oversized index entries in databases larger than 2GiB.
...
FossilOrigin-Name: ed17a878e5a2e0cd1e9b69d528f5ac2ba8452d7c83deaf3cc72ecbff054f5ca3
2026-01-14 13:43:32 +00:00
dan
c289cf57a7
Allow the APIs on this branch to be used to create patchsets as well as changesets.
...
FossilOrigin-Name: 8699fe5b24c8aeb5e552aa7f4995f2b50dd33d1febd23ec1c07c8fc72497da72
2026-01-13 19:59:47 +00:00
drh
35b9709d46
Fix integer overflow problems and error reporting memory leaks in
...
the zipfile extension.
[forum:/forumpost/2026-01-13T00:09:06Z|Forum post 2026-01-13T00:09:06Z].
FossilOrigin-Name: 8e656a483557bc5385219d560b9155c232e7dc9d62642249abc879fb37bacd2a
2026-01-13 02:35:19 +00:00
dan
4b12a38ffb
Fix an OOB read in the sessions module that could occur while processing a corrupt changeset.
...
FossilOrigin-Name: 3c46295487f089a891f566cae43b67ce97794bb60645d5806285600e05eff456
2026-01-12 20:16:04 +00:00
drh
9a341c1edb
Avoid unsigned integer overflow in the delta_apply() extension function.
...
Not part of any standard deliverable.
[forum:/forumpost/d41879b367c7f7ec|Forum thread d41879b367c7f7ec].
FossilOrigin-Name: b354dd12c25c820c04b08e0be4ba8c095fc648dfb4b71345aacce50a17fd269a
2026-01-12 19:56:00 +00:00
dan
9f78d22870
Fix an infinite loop in the sessions module that could occur when processing a corrupt changeset blob.
...
FossilOrigin-Name: d98653bdbc9781970f1c5d66f69c81c93ad14549223ceae02e74c1b99ab05377
2026-01-12 19:13:09 +00:00
dan
817c509365
Add an API to the sessions module to add changes one at a time to an sqlite3_changegroup object.
...
FossilOrigin-Name: 27150a8c22dc5331efa9e97637eae3741682bc14ae993f0b7672ccc63c37f1f9
2026-01-12 16:39:27 +00:00
stephan
bc2101b44e
wasm: filter the custom Module.instantiateWasm() out of node builds, per request from the npm project.
...
FossilOrigin-Name: b57a8215f4259a0aae188b7ee5060f8ff48919303179aae80b58b43ed3b991f5
2026-01-12 15:43:18 +00:00
drh
6444f694a6
Improved documentation (in the header comment) for tmstmpvfs.c.
...
FossilOrigin-Name: 70b1da718c176b8eb154fe087af4352eb6f55c9c0d1f09fc625d073d9f8075f4
2026-01-12 14:45:55 +00:00
stephan
a87d7c00f4
Add sqlite3_carray_bind() to sqlite3_api_routines. [forum:257e642a4c|Forum post 257e642a4c].
...
FossilOrigin-Name: 7c40dbcec8843f6189549a25dcfa8475f53212de8b0de81e10fd6687ef8fae9e
2026-01-11 21:18:23 +00:00
stephan
428c2656ff
Add the @preserve tag to the standalone file sqlite3-opfs-async-proxy.js.
...
FossilOrigin-Name: 334b2be57e752672cfcaf764e3bc73e3d00a0a5174e8ef7c3d83c26136bccaf5
2026-01-11 16:21:32 +00:00
stephan
9ab2a2af1b
wasm: add @preserve tags to two comment blocks (license header and build version info) so that the npm tools know to retain those comments when minifying.
...
FossilOrigin-Name: 596f1ea084e78843aa668d3a197690929848d474e55ff7b1444f78bd11f116b1
2026-01-11 14:14:16 +00:00
stephan
2f47a58c5d
Update speedtest.md to point out xdg-open on Linux.
...
FossilOrigin-Name: 47c7fbcb46df5a657ec76dff9a370aea9e7d0d95406b1e124e9fe527cf85350d
2026-01-10 14:12:40 +00:00
stephan
644c42f3a4
Fix a help text typo in speedtest1.tcl, pointed out off-list by BrickViking.
...
FossilOrigin-Name: 1fd02a75a914f131948fe06fc99f851d3e226f9f1270e25393d79c493c28a347
2026-01-10 00:38:00 +00:00
stephan
aef151ada7
Add the 'npm' ext/wasm makefile target to create npm-bundle.zip for use by the downstream npm package. This target is intended to become their path for pulling npm-relevant deliverables, rather than the canonical downloads, and they have our/my commitment not to break it without involving them first.
...
FossilOrigin-Name: a4752c18a85bee0cef61ee5ac7911661c1894fb861412c957692069195a001a5
2026-01-09 19:44:31 +00:00
stephan
0ad6c6c440
Fix the wasm snapshot build's zipfile name to include '-snapshot' and correct the update-docs target for recent build refactoring.
...
FossilOrigin-Name: 0f53dbf06010f66ba23941ee4269d507efa370f1a8cc0099d274d8baadebdb46
2026-01-09 18:42:27 +00:00
drh
4b93124b6b
Fix potential OOB read on the undocumented test function rtreenode() that
...
is part of the RTREE extension, as described in
[forum:/forumpost/2026-01-08T23:32:19Z|forum post 2026-01-08T23:32:19Z].
The problem is almost certainly harmless since any memory allocation will
be a multiple of 8 bytes, and once the input buffer size gets rounded up to
the next multiple of 8 bytes, the access will still be within bounds.
Nevertheless, it still needs to be fixed.
FossilOrigin-Name: 9adab8b2bef4130abd358d53384cb5f4dd691b808336bb7102793b0165b1c516
2026-01-09 00:41:35 +00:00
drh
1d49bbc25e
Enhance VACUUM INTO so that if a URI filename is used as the target and that
...
filename as a reserve=N query parameter with N between 0 and 255, then the
reserve amount for the generated database copy is set to N. This simplifies
making a copy of a database file with a reduced or reset reserve.
FossilOrigin-Name: a482f9836597de55a9b58fddd3ca2963b8c67ecefef1e34a8c079a2d76f287d0
2026-01-08 20:29:02 +00:00
drh
4b4d07253f
In the reserve=N query parameter on the VACUUM INTO target file, the
...
parameter is a silent no-op if N is out of range.
FossilOrigin-Name: 48e59a27330932cf29bcbd01080757b82ea4a03f5a9e1fa7da076dbfcb7f60e3
2026-01-08 20:20:03 +00:00
drh
c34d561940
Change the name of the log file for tmstmpvfs.c to be an ISO8601 date/time,
...
for improved readability and situational awareness.
FossilOrigin-Name: 66018b85a92db2f3b6b15f7c5c0d54bac890f8e50a1839c08857507c39ec4af7
2026-01-08 18:55:49 +00:00
stephan
22c99e01ff
Fix the sqlite3-worker1.mjs (ESM, non-bundler) build and have demo-worker1-promiser use that file rather than the vanilla one, as a test case. Delete the global symbol installed by that file in ESM and bundler builds, as it's unnecessary there. The first change should resolve [ https://github.com/sqlite/sqlite-wasm/issues/123 |downstream sqlite-wasm/issues/123], with thanks to Jure Rotar for his help.
...
FossilOrigin-Name: 11f5ab0dd8efc68112c3dc5ea0ed486c32bcdb9fde85352180f40a77c6354cac
2026-01-08 18:15:23 +00:00
drh
0a10cdb663
Merge all the latest trunk changes into the reset-reserve branch.
...
FossilOrigin-Name: 6e5f1fbaec775db5c5e90b29cfa0820c9f4d560b36c063b504ef55a6c3a65bdc
2026-01-08 18:14:29 +00:00
drh
5df3efe6f4
Fix an off-by-one error in the page number of ELOG_CKPT_PAGE log
...
messages in tmstmpvfs.c
FossilOrigin-Name: 6fafd010de2d9820f77ee6d2a5f0a7ab1260872d09e95b6932c959ef017aaa77
2026-01-08 17:52:42 +00:00
stephan
cc4a404048
Add a missing #if check for SQLITE_OMIT_LOAD_EXTENSION to shell.c.in, trigged by the fiddle build.
...
FossilOrigin-Name: 1091f3371f4af75344c2e6da26656c259fa96c8a8da9acde3db79df8aa95fd0a
2026-01-08 15:26:19 +00:00
drh
403c153dfa
Minor bug fixes in tmstmpvfs.c, showdb.c, and showtmlog.c.
...
FossilOrigin-Name: 1fee8265f7eab649ee8b28456c37d95198f5cde54e905154e3eccc0b328ece9a
2026-01-08 15:25:04 +00:00
stephan
784bceae33
Remove an obsolete '32-bit' label from tester1-worker.
...
FossilOrigin-Name: e14d9a980351a8d5e935e6991ea02a1c40c9ea8f0ad0fadcabe07d575a9b289c
2026-01-08 15:06:28 +00:00
stephan
92730d21ff
Fix the --size X flag for speedtest1.html when X=0 and force the job size to 5 for kvvfs so that it doesn't block the main thread for too awful long.
...
FossilOrigin-Name: e2634e500cce44650ad5dd95b722b993b1f999b9f8b2396ab15154e67cb065c7
2026-01-08 15:03:00 +00:00
drh
22b08034aa
Enhance the --vfs command-line option to the CLI such that if the argument
...
is not a valid VFS name, but is the name of a file, attempt to load that
file as an extension, which presumably adds the desired VFS.
FossilOrigin-Name: 509954b44eb305a4401ddcbcce24d8f9ed5534717290888899d716b9df40c981
2026-01-08 13:43:15 +00:00
drh
c219d3002f
In the showdb utility, the -tmstmp option works without -csv for the pgidx
...
command.
FossilOrigin-Name: c0aecd2189b431d82eca1c1d6718920cf928d910d443ea506e7b3bf3c5d7e246
2026-01-08 13:20:36 +00:00
stephan
9f9ee82b62
Fix ESCALE typo in shell.c, reported in [forum:b8f6a41c8b|forum post b8f6a41c8b].
...
FossilOrigin-Name: 6fa09449738af03d096208e26447b795f2825d6aaa397de09590cf18b065f82d
2026-01-08 12:43:21 +00:00
drh
67429703bf
Do not show LIKE wildcards on table names in the output of the ".schema"
...
command in the CLI.
[forum:/info/6ebb57b41691293d|Forum post 6ebb57b41691293d].
FossilOrigin-Name: 4c6f646bd2910e6dc80dfec7546a3ed7b47bb9d00402e7c3871ece2c185f4ec0
2026-01-08 12:39:49 +00:00
drh
c0420cd8e4
Add the showtmlog utility for decoding the tmstmpvfs log files.
...
Fix tmstmpvfs so that it records timestamps in milliseconds since the
Unix epoch, not in JDN milliseconds.
FossilOrigin-Name: 762d3cbf06218f1010425a98a71ebf7623b84b45a90e6419b7dec7f10ad0c5a5
2026-01-08 12:22:50 +00:00
drh
e46b51e234
Improve showdb so that it does a better job of handling reserve-bytes.
...
Add the --tmstmp option that causes pgidx to interpret tmstmpvfs tags
if they are available.
FossilOrigin-Name: d7e6e9a5781f467a5b5f02f46134099cf01607a0cf55510155533d57d4a4618a
2026-01-08 01:37:13 +00:00
drh
8a2be4b739
Add the tmstmpvfs.c extension to trunk. It is not a part of any deliverable
...
and can easily be removed later, if found to not be desirable.
FossilOrigin-Name: 869f306592a86d2a78f00266c615f033cd2318a7bff0a97b3dcdd3348d99fc66
2026-01-08 00:41:12 +00:00
drh
ad4b08dcab
Add the --csv option to the "pgidx" option to the "showdb" utility.
...
FossilOrigin-Name: b6ad93f62eb883ee8f4c43dd90c69b31398be6b13186866a7b05d85fe588d967
2026-01-07 23:46:44 +00:00