drh
c4e7964fd6
The tmstmpvfs.c extension should not modify the content of pages going into
...
the WAL file, as that would corrupt the page checksum used for recovery.
Instead, only insert timestamp information as content is written into the
database file.
FossilOrigin-Name: dabaeeb1dab82eaea2449658b9c4c74af0058e5a64a076dab046902c6efac292
2026-01-27 16:18:35 +00:00
stephan
f5d29d6424
Teach sqlite3_rsync to increment its error count when a child process fails, based on [forum:8fe404e547faa42e|forum post 8fe404e547faa42e]. This passes basic sanity tests but requires more testing and needs a review of the final 'else' block in the new code.
...
FossilOrigin-Name: 8be55d405f4ce424760150a2b59b5f663041fdcb377d1b9893b4f4e8e1940246
2026-01-27 16:15:22 +00:00
drh
b4142c491e
For CSV import in the CLI, when the table is created automatically
...
because it does not previously exist, make the column types "ANY"
instead of "TEXT" so that they will automatically adjust to different
datatypes in the input text.
FossilOrigin-Name: aff74e71ea734e1ad8fa893652885fd8c6c432fb60e92913a799e6df5e980b47
2026-01-27 14:59:08 +00:00
drh
a943c0e973
Add the --csv option to the showtmlog utility program.
...
FossilOrigin-Name: 2e96e8efa9a331b0f7d928c55e7d85be64e7c60c85032c1e972f77fe790bdec4
2026-01-27 14:27:19 +00:00
dan
6f8f9fbe25
Fix trivial buffer overreads in the sessions module that could occur when parsing changeset blobs.
...
FossilOrigin-Name: 661878a62870023f7f54e8c591a0823dc457cb89780ab40c1891fb3d5e8f095f
2026-01-27 14:00:59 +00:00
drh
87efa1bd79
Additional usage notes added to the header comment of the tmstmpvfs.c
...
source file. No code changes.
FossilOrigin-Name: d1b8e7740bee13a8cf199c6477ee20a4f8bcbbd9ec4096bcdc05a996fadf0d56
2026-01-27 12:50:52 +00:00
drh
389926bd3c
Enhanced documentation in the header comment of tmstmpvfs.c.
...
FossilOrigin-Name: 3d37da3cb5943a61f528e3002c4c3ac3d41e871d742d8e603bffcc4bc5bd42fd
2026-01-27 12:02:02 +00:00
drh
f202df5857
Fix frame number computation in the log generated by tmstmpvfs.c.
...
FossilOrigin-Name: 57fda9dd85f0de8c5d4a4d8015e67982d73ab96ad6f1cd590a48d8995dc28140
2026-01-27 11:19:49 +00:00
drh
e17a469d74
Enhancements to tmstmpvfs.c: (1) Use the exact same timestamp on logfile
...
entries as on the pages that control, where appropriate. (2) Include the
WAL frame number in ELOG_CKPT_PAGE logfile entries.
FossilOrigin-Name: fcf16297850abf5186b0d414b4f31d4b515925ef5cca5e7d7d84984c26160d00
2026-01-26 21:20:28 +00:00
dan
8f03e92c41
Add test for fts3 compress= and uncompress= options.
...
FossilOrigin-Name: bace9de67db426017d98f31685da1fc6ab10c7755681a41ca978cc97cb2ad5df
2026-01-26 20:17:10 +00:00
drh
583644e660
Improve the comments on the generated byte-code for the merge algorithm.
...
FossilOrigin-Name: 4468c9e1a262d3d7efd8edff19e22e13b64ebed606ce2f18c9cabce93ef257d3
2026-01-26 19:37:57 +00:00
drh
15357aaf10
Fix the initialization of the sqlite3Api[] constant to conform
...
with the previous check-in.
FossilOrigin-Name: 0a31a740843404958f61798aa17f94b5162bcf467c1c863d745346a316160d13
2026-01-26 13:54:05 +00:00
drh
49bf78685e
Add alternative sqlite3_carray_bind_v2() interface.
...
FossilOrigin-Name: 925384d7711867428644595c0903682e6e365eb974c57e6680b51d511c980054
2026-01-26 13:44:42 +00:00
stephan
840199ee18
Fix speedtest1.wasm build regression introduced with Emscripten 5.0.0.
...
FossilOrigin-Name: 4733d351ec2376291f093ba8d2ba71d82c6f100c68dc860eee0532986c154e71
2026-01-26 10:53:24 +00:00
drh
713ee08d33
Fix a possible problem following OOM in a WITH statement.
...
FossilOrigin-Name: c38797d400dc4135108a6e303f2c10779ba9adf0daae28f1789f9106a68d21d5
2026-01-26 00:11:01 +00:00
drh
9b7005feea
Always use the sort-and-merge algorithm for EXCEPT, INTERSECT, and UNION,
...
even if there is no ORDER BY clause.
FossilOrigin-Name: 132ba781b031972c6ac564ff0d1d6b2dfaeee77fe503ad6e9e8647bb5ba28bd3
2026-01-25 23:28:42 +00:00
drh
33db5b73e5
The Select.addrOpenEphm field is no longer needed. Remove it and
...
simplify related code.
FossilOrigin-Name: 1fe5a1ca72892987716b71b9419265f25c8c426e52320acf56724fd64b838be6
2026-01-25 20:15:00 +00:00
drh
3b440ce573
Refactor one function name. Comment improvements. No functional changes.
...
FossilOrigin-Name: 5b4c0a5e8609e16a4b08b7f95d55e513ee4300b22d044ac8f42e60b96cff5be6
2026-01-25 18:21:53 +00:00
drh
8e272dd9a7
Fix the jsonb_group_array() and jsonb_group_object() functions so that they return
...
JSONB as they should, and not text JSON, when the array or object is empty.
[forum:/forumpost/2026-01-25T00:47:06z|Forum post 2026-01-25T00:47:06z].
FossilOrigin-Name: 8b53b97833afe27c0c3782c5fbc0437976215b571579f73a94c33e28d3fedb41
2026-01-25 15:18:31 +00:00
drh
46a395ff3d
Additional simplifications to achieve 100% MC/DC.
...
FossilOrigin-Name: 781b7ec0bcaa5d94e8c5fd31b4fe0203393d5209a5f518848f057ec3d2b8d7ac
2026-01-25 13:26:19 +00:00
drh
619f1f7083
Fix harmless compiler warnings in FTS5.
...
FossilOrigin-Name: 29d9132a768e0460e22e41abb8b6188181ba0fc6c4665161d3d0af28d7583e19
2026-01-25 11:56:25 +00:00
drh
84075044de
Remove additional unnecessary code associated with the setup phase of a recursive CTE.
...
FossilOrigin-Name: 82735513762c8adfe7ad4865dcb76c625cbd8f6976bb98f2c342cf98cfdf3b36
2026-01-25 11:41:49 +00:00
drh
fb288a432c
Assert() statements added to sqlite3_result_text64() and
...
sqlite3_bind_text64() to detect misuse of SQLITE_UTF8_ZT that can
result in undefined behavior.
FossilOrigin-Name: e761fcc6838aee1fa5e098ad167866845a8ee140a3346fb089a1238abb58d998
2026-01-24 17:18:56 +00:00
drh
40b6eace0e
Expound upon the meaning of SQLITE_UTF8_ZT, in an attempt to head off
...
confusion.
FossilOrigin-Name: 9a74d0c3e78eef9a32775f445ecb3fae76e2f3886b9173a16971d7c7506967fe
2026-01-24 12:19:00 +00:00
stephan
a5070d083c
Expose SQLITE_UTF_ZT to WASM for completeness's sake, but the WASM build does not expose sqlite3_bind_text64() or sqlite3_result_text64() because it only supports UTF8 encoding, so ZT does not currently have a genuine use there.
...
FossilOrigin-Name: d931831ce9d2dea3730f33afc046e159ad886842114831a6bbe56d5b746ab0af
2026-01-24 01:17:06 +00:00
drh
ca77c585be
Fix an incorrect assert().
...
FossilOrigin-Name: b9ce349e1e4166c3d1c97d2f6fb1792b89e3316c8ec182daa032b6655e9c2c17
2026-01-24 00:33:41 +00:00
drh
e4445f04c5
In the cost metrics of the query planner, the estimated number of output rows
...
from an EXISTS-to-JOIN loop should not be more than 1.
[forum:/forumpost/989880d0aa|Forum post 989880d0aa].
FossilOrigin-Name: fc4e93a381dfb99dddfd2ef001bf56b92ab89ee3c7044c7ce13ad32f38b3f418
2026-01-23 20:46:54 +00:00
drh
4b736ce2f8
More code simplifications.
...
FossilOrigin-Name: 3d76732a45333f6f3e21667bb018a859d20815243d276fad0dc126d3c667d4aa
2026-01-23 18:52:45 +00:00
drh
447fd1bf29
Fix a minor EXPLAIN QUERY PLAN formatting problem. Remove a NEVER() that is
...
reachable.
FossilOrigin-Name: 423173079ee0911f86a76c9b905d98328f7aae45d43a38a13957c5c510f87670
2026-01-23 17:06:54 +00:00
drh
1f567aef4c
Remove code that is no longer used.
...
FossilOrigin-Name: 8d7f91e07b0c7573f94fddd64f39671e608969764615bd7f5c060e7ee7540bc6
2026-01-23 16:07:51 +00:00
drh
40573642e8
Continuing work toward using sort-and-merge for UNION.
...
FossilOrigin-Name: 94bf43634bbb1fd8e67235b8be0d9744cca1e364ab3cceecca4528e7b78780d1
2026-01-23 14:37:08 +00:00
drh
c46074808e
Merge the latest trunk enhancements into the union-by-merge branch.
...
FossilOrigin-Name: bdf4d6a9398266c98a0d4ad3c60b431cd498bfa80add3e81d717c687634c2602
2026-01-23 11:44:40 +00:00
drh
8fd91361e6
Add the SQLITE_UTF8_ZT value which can be the encoding argument to
...
sqlite3_result_text64() or sqlite3_bind_test64() to indicate that the
argument is UTF-8 text that is zero-terminated.
FossilOrigin-Name: cef0eed8054f3f760cf3142a897c7eead20869157da8b2a0ee9443733eecd371
2026-01-23 00:55:36 +00:00
drh
cc11fb3bb2
Merge the latest trunk enhancements into the utf8-zt branch.
...
FossilOrigin-Name: 0dd1633d34a0c6a6d56e32ca3b05bc0aa55e47097f600d1fc9f00022a53681b3
2026-01-22 19:29:34 +00:00
drh
cb3d6d14fe
Enhance the [/info/e33da6d5dc964db8|EXISTS-to-JOIN optimization] so that
...
the inserted JOIN terms are not required to be on the inner-most loops,
as long as all dependencies for the EXISTS-to-JOIN loops are in outer
loops. This addresses the performance concern of
[forum:/forumpost/2026-01-21T19:49:04z|forum post 2026-01-21T19:49:04z].
Test cases in TH3.
FossilOrigin-Name: 298d5c8fa6207afb6cdcca3b312a1eeddda0edeb6d840aa5476a7195047a2158
2026-01-22 19:02:32 +00:00
drh
d3285e67a8
For the ".eqp full" show both the QUERY PLAN and the full byte code, just as
...
it has in the past.
FossilOrigin-Name: 756484fcaa7efed0691814f3affeb2449d3301c5c764530f2ec8e290caea567f
2026-01-22 15:59:45 +00:00
drh
e0e67f1a73
Add a new encoding constant SQLITE_UTF8_ZT, which if used with
...
sqlite3_result_text64() or sqlite3_bind_text64() declares that the
string provided is UTF8 and zero-terminated at the length specified.
FossilOrigin-Name: 2d84ce88fed12766272f6b1293927eb4c7ce92da0334b09b4875ed2dfdd00ade
2026-01-21 19:24:07 +00:00
drh
2d98df1536
Add a new assert().
...
FossilOrigin-Name: bc450aba674a8934d718a88af3c2343555b43c2d8403bd5f6d14e177fce6bc9f
2026-01-21 11:29:20 +00:00
drh
e702822708
Strive to use sort-and-merge for compounds in CTEs.
...
FossilOrigin-Name: 73ed1c790bb386a2981bf7076d23d37e09fa9db3966a7a164b8964fdb14fdad2
2026-01-20 20:10:41 +00:00
dan
ca0b14a490
Update the shell tool to work with SQLITE_OMIT_AUTOINIT builds.
...
FossilOrigin-Name: 2b3b36da9d60c265dceec5964ea51c752d81f41459fb6849c8faea658b253552
2026-01-20 18:30:48 +00:00
drh
e66806de33
Fix another test case to work with union-by-merge.
...
FossilOrigin-Name: 8279c10e2465838010508f6018aa6fdb0e07ca3639f65e727a03a4222573ea57
2026-01-20 18:20:26 +00:00
stephan
815905544d
Tiny JS doc touchup.
...
FossilOrigin-Name: 6d9ec0a21a2b33a7bb3cf9c3677c9ef7a9738d318cd2d8159b33583b2bd4abec
2026-01-20 18:07:27 +00:00
stephan
e822005684
wasm: make pre-js.c-pp.js a no-op in bundler-friendly builds.
...
FossilOrigin-Name: 982a91abc0c97e7e785d3ba69a4d0516a899f4d6cd462027ebdf7115e577e8c3
2026-01-20 18:01:56 +00:00
stephan
bb56ddc4e3
wasm: a potential workaround for cases such as [forum:1eec339854c935bd|forum post 1eec339854c935bd], where client-local needs require overriding Emscripten config defaults (which we very intentionally do not document or support for reasons explained in that thread). This is untested because it requires a special-needs setup, but it doesn't break anything for run-of-the-mill cases.
...
FossilOrigin-Name: c8e6be9241e3e17898c451baad109b75dc8a97a91ff1e43c67a6c962b75af8f3
2026-01-20 17:10:22 +00:00
drh
ec13fcecd2
Minor fixes. Tests are passing now.
...
FossilOrigin-Name: 305ae331f5e791941c12b04b727656ac8d80f7c5cb6343277b979a456eb3b834
2026-01-20 15:07:28 +00:00
stephan
d4dc275ebc
Add an SQLITE_API_ARMOR check to sqlite3_get_clientdata(), per request in [forum:a011a001f4|forum post a011a001f4].
...
FossilOrigin-Name: 346ad366a8ebed1e7936c59f8a40e9c8e7e31d0153bc4f654a47b2ddc39b18ca
2026-01-20 10:57:44 +00:00
stephan
f4a613aa46
Minor doc updates in mkwasmbuilds.c.
...
FossilOrigin-Name: 81840bd4b2132c1c701bb6fd5a2ac48a4ed33d2b68a3f7a826fa32dc0fc16483
2026-01-19 22:20:12 +00:00
stephan
d50161a3cd
wasm: remove the bundler-friend builds from the 'all' target, as they're only needed for the 'npm' target.
...
FossilOrigin-Name: dfe4b788ca6596ea9f26445c864f56f81c7816798f5fedfc4e89ba1eb097b0aa
2026-01-19 22:01:10 +00:00
stephan
4eb307cf46
Minor doc touchups in the opfs-sahpool VFS. No functional changes.
...
FossilOrigin-Name: 67c0d11701842baaa5227ccce02483ead07bec8426b9861f2e2a0465414ae382
2026-01-19 21:57:32 +00:00
drh
0af76f6caa
Be more aggressive about using a sort-and-merge to compute the UNION of
...
two SELECT statements. Experimental branch. This check-in is failing some
tests.
FossilOrigin-Name: e534af8a78f5458bd656f70eb9f68084c0ed3f97360f5a033fba3564849e970c
2026-01-19 19:51:03 +00:00