]>
git.ipfire.org Git - thirdparty/sqlite.git/log
dan [Mon, 24 Apr 2023 19:22:21 +0000 (19:22 +0000)]
Allow the sessions module to be configured to capture changes from tables with no explicit PRIMARY KEY.
FossilOrigin-Name:
8a612f0860126c0c8473b1e65fcabb9a8821d8bf09fdf3f6018acfc99df9af71
stephan [Mon, 24 Apr 2023 04:25:42 +0000 (04:25 +0000)]
Add a note about the journaling mode in the OPFS VFS. No code changes.
FossilOrigin-Name:
e79c95fc130fc302719690eb6391d96070aff825b2b51ef6c4ad459d9a8918d7
larrybr [Sun, 23 Apr 2023 00:12:23 +0000 (00:12 +0000)]
CLI to have "undocumented" dot-commands, not usually shown by .help
FossilOrigin-Name:
17f5dd2d2ae02a95180b9208b7de805922ba20271d3263e3193f0d46f4ec324c
drh [Sat, 22 Apr 2023 22:32:19 +0000 (22:32 +0000)]
The sqlite_stat4.idx field is case insensitive. It should work even if
some entries use a different case than others. Fix for
[forum:/info/
6c118daad0f1f5ef |forum post
6c118daad0f1f5ef ].
FossilOrigin-Name:
f097ca70b5b967d1aadebd74ac5020813e00b7c30cc543814dbf5f359d1328f1
dan [Sat, 22 Apr 2023 20:47:08 +0000 (20:47 +0000)]
Avoid a crash in fts5 when combining an empty expression with another.
FossilOrigin-Name:
33681ff3d29c9f096dbd8c5d885993f780e93974a7653adc00fa41a158356d7c
drh [Sat, 22 Apr 2023 20:22:17 +0000 (20:22 +0000)]
Enhance the ".tables" command in the CLI so that it is able to deal
gracefully with an OOM situation.
FossilOrigin-Name:
5157fd1cf753b1c01c6c00e9ac2712da2631a673837ed15ec3420ec869ee66aa
drh [Sat, 22 Apr 2023 20:07:48 +0000 (20:07 +0000)]
The assertion-fault fix in [
53a61f7423a7f057 ] was not quite complete. This
additional change enhances it to deal with WITHOUT ROWID tables. No changes
to deliverable code.
FossilOrigin-Name:
4d5af42c651bc1655a4f09b743f2a1424f19c1e4248e041b3fd4a042fd1f9799
drh [Sat, 22 Apr 2023 17:41:53 +0000 (17:41 +0000)]
Add the --unsafe-testing command-line option to the CLI. Without this option,
features of the CLI that are intended for testing and that might result in
incorrect answers, assertion faults, and/or corrupt database files if misused
are disabled.
FossilOrigin-Name:
f28256a96af4263c0caded79b7481b88e9c7e7f1af7dbb3fd5e22ff07fbedaf3
larrybr [Sat, 22 Apr 2023 16:46:38 +0000 (16:46 +0000)]
Add --unsafe-testing invocation option to CLI. Needs some tests added and changed.
FossilOrigin-Name:
b3d9ac052d5c2dd1afeeeb5c9cfac9dd91a1b8d6a74a2ef10aa2037ca505abce
drh [Sat, 22 Apr 2023 12:47:16 +0000 (12:47 +0000)]
Fix an incorrect assert() statement in btree.c as found by
[forum:/info/
d03345d572713fe6 |forum post
d03345d572713fe6 ].
FossilOrigin-Name:
cd485b302c54aef066d751a153df34eea0cd23e54a414e291f636ad9929fe78a
drh [Sat, 22 Apr 2023 12:37:41 +0000 (12:37 +0000)]
Fix a incorrect assert() statement in the pre-update hook logic. No changes
to production code. Fix for the problem reported by
[forum:/info/
19b217bfe709a072 |forum post
19b217bfe709a072 ].
FossilOrigin-Name:
53a61f7423a7f057568a1d8a1e63be01a2328997850dc32e3d8c6d51f1c5ab0b
drh [Sat, 22 Apr 2023 12:11:31 +0000 (12:11 +0000)]
larrybr [Sat, 22 Apr 2023 11:33:27 +0000 (11:33 +0000)]
Also fix no-length string intolerance for CLI json mode.
FossilOrigin-Name:
3ac1984039a50445ff65db97468a5313d7f09db7b604755e444b77ac9346ea76
drh [Sat, 22 Apr 2023 11:29:36 +0000 (11:29 +0000)]
Early out from sqlite3Prepare() following an OOM to avoid possible
problems further along in the parse. Fix for the NULL pointer dereference
reported by [forum:/info/
2e5131839365682a |forum post
2e5131839365682a ].
FossilOrigin-Name:
f35ce7c122017009496b777f33e641d0be086abee6ea8e25aab4c3e0fb45731a
larrybr [Sat, 22 Apr 2023 11:24:52 +0000 (11:24 +0000)]
larrybr [Sat, 22 Apr 2023 09:26:36 +0000 (09:26 +0000)]
Avoid need for cast in CLI shell_check_oom() calls.
FossilOrigin-Name:
c88550ef6711b03a81e2e6d121e2eb99ccff6e925c025dd6e85dd81088508400
larrybr [Sat, 22 Apr 2023 09:14:22 +0000 (09:14 +0000)]
stephan [Fri, 21 Apr 2023 15:37:33 +0000 (15:37 +0000)]
Change the return type of the ts_read/write() family of functions from int to ssize_t, per report in [forum post
947169d5e7 ](forum:
947169d5e7 ).
FossilOrigin-Name:
7809e7ce6a70657b8ea239eb4778698f7986a658e9177a57b2fb7814c069c936
larrybr [Thu, 20 Apr 2023 20:07:14 +0000 (20:07 +0000)]
Increase CLI tolerance of arifically low memory.
FossilOrigin-Name:
13f2638622871db9b91db547dcfd38f61c03e7696e4df5144adefcd86140aeba
larrybr [Thu, 20 Apr 2023 16:15:20 +0000 (16:15 +0000)]
CLI .ar made to enforce getting a proper subcommand.
FossilOrigin-Name:
104ab105ac0e96c0fc61c6d69179bf984fcfe5e0efb2c82f3742456c1b5fe5d1
drh [Thu, 20 Apr 2023 10:40:37 +0000 (10:40 +0000)]
Fix a function declaration so that it correctly appears as private in
the amalgamation. [forum:/forumpost/
ec8c77516c |Forum post
ec8c77516c ].
FossilOrigin-Name:
1864569bb9fe28a5e77f34b199f26ac272dbbb1a6642dacd7e50ddd29aa567b6
dan [Thu, 20 Apr 2023 10:26:56 +0000 (10:26 +0000)]
Fix a broken assert() in the recovery extension. [forum:/forumpost/
82a88f5812 |Forum post
82a88f5812 ].
FossilOrigin-Name:
8a1ad137606ce5bddbed62f89ff9a5cd922c6530db84c12b8b27c08df3c66bc6
dan [Wed, 19 Apr 2023 20:29:26 +0000 (20:29 +0000)]
Add tests for the progress-handler callback with the fts5 'secure-delete' feature.
FossilOrigin-Name:
48505ad950bc0902d58210be066d4672e6085eb27c525ba2bc663fde7e932ff7
drh [Wed, 19 Apr 2023 18:36:49 +0000 (18:36 +0000)]
Improved rebustness of the pcache tracing logic.
FossilOrigin-Name:
0a43235b8368a0996d1856c4e956786a5321275458cb9179ce818aa47bb824ed
drh [Wed, 19 Apr 2023 18:32:32 +0000 (18:32 +0000)]
dan [Wed, 19 Apr 2023 17:07:35 +0000 (17:07 +0000)]
Fix a segfault that could occur if a non-empty in-memory database was the destination of a backup operation from a database with a smaller page size.
FossilOrigin-Name:
020968f857d7b90bab3525fc9d6b859a019f6a80422c3d5ffb88f5bdb8e02a11
drh [Wed, 19 Apr 2023 15:35:45 +0000 (15:35 +0000)]
Do not remove pages from the cache of an in-memory database due to a
failure to acquire the page due to it being larger than the maximum page
size. Fix for [forum:/forumpost/
a19bb49140 |forum post
a19bb49140 ].
FossilOrigin-Name:
982b35563da685dfdf50cbe4a7ae829d3b428e03587028df7efe520f819b1dc2
drh [Wed, 19 Apr 2023 14:26:43 +0000 (14:26 +0000)]
Fix ambiguity in the header comment to the sqlite3PagerUnrefNotNull() routine.
No code changes.
FossilOrigin-Name:
d419e65eef2954ed759121254024028854b55e8c4f52ff7a8896c8cadfc57f53
drh [Wed, 19 Apr 2023 13:56:47 +0000 (13:56 +0000)]
Fix a debugging printf() in pcache.c. This only comes up on custom builds.
FossilOrigin-Name:
f2d6756731caadf9a30214ab7d19717a2ca1dae2652bcc6b211f6b0830362240
stephan [Wed, 19 Apr 2023 13:39:13 +0000 (13:39 +0000)]
Correct use of an undefined symbol in one of the OPFS VFS loading failure error reporting cases (copy/paste error).
FossilOrigin-Name:
c81c968b458977b2d6dd2fdd3c3d667f0e7cee069f3715363d0e8aed4e6e8377
drh [Wed, 19 Apr 2023 13:30:17 +0000 (13:30 +0000)]
Add pager debug tracing of truncate operations.
FossilOrigin-Name:
0daadf36229816abe73ff684b55ef4f8045ed314347f3a694404a2084decb355
drh [Wed, 19 Apr 2023 12:08:46 +0000 (12:08 +0000)]
Attempt to suppress harmless compiler warnings reported by
[forum:/forumpost/
fc98845c06 |forum post
fc98845c06 ].
FossilOrigin-Name:
f6e6c5f94cef83645288568a344a0ff64e4ef17b10fab28996567a94db0a002a
larrybr [Tue, 18 Apr 2023 23:05:34 +0000 (23:05 +0000)]
CLI to cease dumping back to OS shell on single ^C when interactive.
FossilOrigin-Name:
ba8e4378f21d529a248d2d60b60974fef0d6612dcaaa1f6b7f8a6946fc46b39b
larrybr [Tue, 18 Apr 2023 22:53:30 +0000 (22:53 +0000)]
Add comment on CLI ^C fix (because it is a bit subtle.)
FossilOrigin-Name:
19c062f1cd814a33bf9c10928217464cddaea7c3291ff44e605901a86b82a06d
larrybr [Tue, 18 Apr 2023 22:28:48 +0000 (22:28 +0000)]
drh [Tue, 18 Apr 2023 15:21:55 +0000 (15:21 +0000)]
Ensure that the VACUUM command is not confused by alternative encodings when
it is the first command run on new database connection.
[forum:/forumpost/
09503b4d33 |Forum post
09503b4d33 ].
FossilOrigin-Name:
8b0fe63f873661037351fc1eba6071b98b5c97a0fc8bd8a504a90d047f78bc0d
drh [Tue, 18 Apr 2023 14:13:54 +0000 (14:13 +0000)]
Another fix to the indexed expressions in aggregate queries with GROUP BY
enhancement of ticket [
99378177930f87bd ] and implemented by
check-in [
b9190d3da70c4171 ] to address a problem described by
[forum:/forumpost/
f34e32d120 |forum post
f34e32d120 ],
FossilOrigin-Name:
5acc3ef83e16a9f2803981a6e61eca62fe177cac4eed1befe2ade3a5977a1eab
drh [Tue, 18 Apr 2023 11:35:09 +0000 (11:35 +0000)]
dan [Tue, 18 Apr 2023 11:33:35 +0000 (11:33 +0000)]
Fix an assert() in fts5 that could fail following an OOM or IO error.
FossilOrigin-Name:
49595083ba58e13d404b6a11c28f53768a257c59f3f36be3591438127df7e875
larrybr [Mon, 17 Apr 2023 23:59:15 +0000 (23:59 +0000)]
When CLI -utf8 active, do no translation to MBCS for output to Windows console. plus code style improvements
FossilOrigin-Name:
25edf6089724bf9f97c796e5abf838ec508ebc132895d8325620c16d63996fef
mistachkin [Mon, 17 Apr 2023 22:28:02 +0000 (22:28 +0000)]
larrybr [Mon, 17 Apr 2023 21:18:53 +0000 (21:18 +0000)]
When CLI -utf8 active, do no translation to MBCS for output to Windows console.
FossilOrigin-Name:
cc1d4296d71ee6e2ba133edc581385e201c89657911c2ed39108843c776633a4
dan [Mon, 17 Apr 2023 18:32:22 +0000 (18:32 +0000)]
Fix some problems with using fts5 options 'secure-delete' and detail=none together.
FossilOrigin-Name:
4d3f27ba90aa59837e49ceaae9f36cad426af3a33707d85d1bb848fc1bda6fed
dan [Mon, 17 Apr 2023 11:41:42 +0000 (11:41 +0000)]
Fix problems handling corrupt records in new fts5 code.
FossilOrigin-Name:
2f63d4a8bac6dc72197df32efd84c148adbc4794943088dff08da57b15dd7900
dan [Mon, 17 Apr 2023 10:39:51 +0000 (10:39 +0000)]
Fix an assert() in fts5 that may be true when dealing with corrupt records.
FossilOrigin-Name:
e8de2774463c07b76cd6b9a44ab32a583fe973f42a21b21af46fe82ab177c1b8
dan [Sat, 15 Apr 2023 21:00:55 +0000 (21:00 +0000)]
Change a memcpy() to memmove() in new fts5 code.
FossilOrigin-Name:
8de4542553ae20947787b4daf5e88bbe69f815679960e700e19f9c1148234b08
dan [Sat, 15 Apr 2023 19:58:58 +0000 (19:58 +0000)]
Fix a use-after-free that could follow an OOM or IO error in fts5 when using 'secure-delete' mode.
FossilOrigin-Name:
904be83d9f3dd4b21a3aa47dde337b5c045b925ffdde4bccd1f8e8fdbef68c18
dan [Sat, 15 Apr 2023 19:13:51 +0000 (19:13 +0000)]
Avoid dropping the error code following an OOM in fts5 when using 'secure-delete' mode.
FossilOrigin-Name:
9ee24a499c7b4a048f269f1c03c7c0b22b2898a3c23ea3e2511c2ba0342afa30
larrybr [Sat, 15 Apr 2023 17:56:43 +0000 (17:56 +0000)]
Add -utf8 option to CLI, for improved console behavior on Windows.
FossilOrigin-Name:
414010d2366477285cb238f7af1e3d511ab4cda4bd4493441bd9868387dd5b66
dan [Sat, 15 Apr 2023 17:47:32 +0000 (17:47 +0000)]
Add the 'secure-delete' option to the fts5 extension. For configuring fts5 to delete old entries directly from the full-text index instead of using delete keys.
FossilOrigin-Name:
394980e4fe12125460ab14da41edae9089a4da332a46f3124bf0b9778793791f
larrybr [Sat, 15 Apr 2023 16:12:46 +0000 (16:12 +0000)]
For CLI -utf8, set output codepage too. Adjust PP vars so that the code can be entirely omitted for targets pretending to be "WIN32" but not quite doing so.
FossilOrigin-Name:
543594a7277b12d1c58af8e3cba3841667cf924172995536489ce7da704a11d7
larrybr [Fri, 14 Apr 2023 21:34:58 +0000 (21:34 +0000)]
Fix stray edits in comments in last check-in.
FossilOrigin-Name:
fa3ce7f013d40147f012e26d0ede75b134174f144d314336310c9ac585e23fb7
larrybr [Fri, 14 Apr 2023 21:23:08 +0000 (21:23 +0000)]
Set CLI -utf8 option and build with line-editing package to be mutually exclusive. Integration of console-invasive UTF-8 handling with line-editing takeover of console may come later.
FossilOrigin-Name:
047344a91583f273a55fe3659bb8020ffc947c05c4274fbda54ee0608e62adb1
larrybr [Fri, 14 Apr 2023 19:56:32 +0000 (19:56 +0000)]
Cure CLI double-prompting (by ditching gcc fgetws()), general cleanup. Work remaining is to avoid effect of -utf8 when a line editor is linked/used as part of CLI.
FossilOrigin-Name:
73a5f54231e9f6ad8f013df3987ea48c516080f9193ed873b56f982ee75658c2
dan [Fri, 14 Apr 2023 18:00:03 +0000 (18:00 +0000)]
dan [Fri, 14 Apr 2023 17:00:29 +0000 (17:00 +0000)]
Add extra OOM test for the new code on this branch.
FossilOrigin-Name:
846ae7e099ce67dab6b5df0ad5648a01d7bf7f2acf8312d817ed8505d4ea5aec
dan [Fri, 14 Apr 2023 16:11:05 +0000 (16:11 +0000)]
Add tests for the new feature on this branch.
FossilOrigin-Name:
0268d1a59316d169927cbd4c562725e46a9023b7d7123ade911c12203e222adf
dan [Fri, 14 Apr 2023 14:36:34 +0000 (14:36 +0000)]
Fix SQLITE_OMIT_VIRTUALTABLE builds of testfixture.
FossilOrigin-Name:
430ec1a61507d8afd8adc161f577f32856dba21506db9717fae3d14570786439
dan [Fri, 14 Apr 2023 13:34:26 +0000 (13:34 +0000)]
Update test script recoverbuild.test so that it may be run using old test harnesses that run more than one test script in a process.
FossilOrigin-Name:
5135aab0c0ab39f3b9cc84efbbc57f7266b42d98134fc0c5dace06f707374195
drh [Fri, 14 Apr 2023 10:40:50 +0000 (10:40 +0000)]
When setting the column types on a subquery, ensure that the COLFLAG_HASCOLL
flag is cleared from column names from when the collating sequence name has
been removed.
[forum:/forumpost/
6916dacf83 |Forum post
6916dacf83 ].
FossilOrigin-Name:
8d9dcd7cfdd53034e21cdb2cb997b6f5fe3207ca5d0d7a0b841b8a68e6ce8624
drh [Fri, 14 Apr 2023 10:35:29 +0000 (10:35 +0000)]
drh [Fri, 14 Apr 2023 00:20:16 +0000 (00:20 +0000)]
Avoid double de-quoting of table names when processing RESTRICT actions
in foreign key constraints.
[https://bugs.chromium.org/p/chromium/issues/detail?id=
1405220 |Chromium
1405220 ].
FossilOrigin-Name:
bb2b5ab172f0751c00343facf36fb12db10c88220caece31849f2711f12293d9
drh [Thu, 13 Apr 2023 18:44:59 +0000 (18:44 +0000)]
Fix an obscure issue with ALTER TABLE RENAME that comes up with triggers
that have UPDATE statements that contain errors.
[forum:/forumpost/
ff3840145a |Forum post
ff3840145a ].
FossilOrigin-Name:
c4845a7c5f7f219848d3ee32eef0f9c69ad6dc6e8509da84d612f41e1e05f007
dan [Thu, 13 Apr 2023 14:53:19 +0000 (14:53 +0000)]
drh [Thu, 13 Apr 2023 14:50:50 +0000 (14:50 +0000)]
Fix a code-generator issue associated with very unusual use of window
functions. Both the expr.c or the window.c changes will each
independently fix the problem. They are both included in this patch for
defense in depth. [forum:/forumpost/
0d48347967 |Forum post
0d48347967 ].
FossilOrigin-Name:
1ba22631a7831e3562eda0eb6a5edf7f009c85c7ab4451d9eacd13ef0fb6036a
larrybr [Thu, 13 Apr 2023 14:14:27 +0000 (14:14 +0000)]
Get CLI utf8_fgets() to not consume more input than it returns. Get console setup restoration to happen for all non-crash exits.
FossilOrigin-Name:
b4fa233d3dda54fa83771844cf5156bf1275c687925340af17a7713a9400dfef
drh [Wed, 12 Apr 2023 20:23:03 +0000 (20:23 +0000)]
drh [Wed, 12 Apr 2023 19:40:00 +0000 (19:40 +0000)]
Automatically set HAVE_PREAD and HAVE_PWRITE on linux, as has been done in
MacOS for a long time now.
FossilOrigin-Name:
2f7a36d2c374100019bd9d38aea51ea10cfcf9b1f0330ba084a75f0773df8ebf
drh [Wed, 12 Apr 2023 18:57:50 +0000 (18:57 +0000)]
Small performance enhancement to integer-to-text conversion.
FossilOrigin-Name:
cfb3dba9b015ce7a75857978bfd2540b4d5be985d9d2ec4a5842b3089ed3da60
dan [Wed, 12 Apr 2023 18:18:28 +0000 (18:18 +0000)]
Avoid leaking a database handle in test script rbuexlock.test.
FossilOrigin-Name:
2edf98d128cabc0c9de1295470d7f87eb64e4cc1f13344fe3c198fcf9c7bf019
dan [Wed, 12 Apr 2023 18:06:43 +0000 (18:06 +0000)]
Remove temporary debugging code accidentally left on this branch.
FossilOrigin-Name:
0a0f64870feaf95d2673efc8884ad1236d9bbf9bdb94364f8d2602221bd36ff3
larrybr [Wed, 12 Apr 2023 17:54:52 +0000 (17:54 +0000)]
WIP: CLI option to take control of console on Windows and make it support UTF-8 input pasting (or typing). Needs work to become robust per "ToDo:".
FossilOrigin-Name:
824382393d92d9eb6df8701de7c263280150569a708759c4a539acc6d8d38821
dan [Wed, 12 Apr 2023 17:40:44 +0000 (17:40 +0000)]
Add the 'secure-delete' option to fts5. Used to configure fts5 to aggressively remove old full-text-index entries belonging to deleted or updated rows.
FossilOrigin-Name:
4240fd09b717dbc69dffe3b88ec9149777ca4c3efa12f282af65be3af6fa5bb0
drh [Tue, 11 Apr 2023 19:38:47 +0000 (19:38 +0000)]
New #ifdef to enable building with -DSQLITE_OMIT_WINDOWFUNC.
FossilOrigin-Name:
e1ff83fa2565334b28bd0d6582088c4ae0d2d9a590d973615a4a598683fe419c
drh [Tue, 11 Apr 2023 15:06:20 +0000 (15:06 +0000)]
Remove an ALWAYS() that can sometimes be false. Add a test case that makes
the test false.
FossilOrigin-Name:
c8fb143d64d8e823684cd26799080da4b42bef121ca3c6315b1803a593490926
drh [Tue, 11 Apr 2023 02:10:34 +0000 (02:10 +0000)]
larrybr [Mon, 10 Apr 2023 23:21:19 +0000 (23:21 +0000)]
For sha3 extension, mention NIST standard implemented.
FossilOrigin-Name:
529ab138a438379f0cbd170bff5211aee1c327a1b3119a714ee15f68fd2239f3
drh [Mon, 10 Apr 2023 18:44:00 +0000 (18:44 +0000)]
New assert() statements to validate the parameters to
sqlite3BtreeCursorHint(). Fix a problem with the construction of those
parameters discovered by
[forum:/forumpost/
0b53708c95 |forum post
0b53708c95 ].
FossilOrigin-Name:
4c5a3c5fb351cc1c2ce16c33314ce19c53531f09263f87456283d9d756002f9d
drh [Mon, 10 Apr 2023 13:20:51 +0000 (13:20 +0000)]
Sync the vt02.c test virtual table with TH3, in order to pull in the fix
for long delays when there are huge OFFSET values.
FossilOrigin-Name:
49ba030080dd00b4fdf788fd3da057b333e705fa0fe37d653e2461bf96ca3785
drh [Sun, 9 Apr 2023 20:44:09 +0000 (20:44 +0000)]
Fix an assertion fault that can occur when compiling with both
SQLITE_ENABLE_UNKNOWN_SQL_FUNCTIONS and SQLITE_ENABLE_STAT4.
FossilOrigin-Name:
9ff69e599817610d14948a3eebcc4d3c18245f78a1433c23ae659211cbbdb017
drh [Sun, 9 Apr 2023 10:09:28 +0000 (10:09 +0000)]
Fix a faulty assert() in whereRangeScanEst() that should only apply if there
are not prior errors.
dbsqlfuzz
567ad91132879cbab8172b38c6a68ad40fa8d650 .
FossilOrigin-Name:
8ba9b08bd976ed2c024f5f378b4dd40a55226e950af77c476c21273fccaf7e26
mistachkin [Sat, 8 Apr 2023 19:27:03 +0000 (19:27 +0000)]
Fix a couple harmless compiler warnings seen with MSVC.
FossilOrigin-Name:
1b864a370fd04bba11487e3dab0388394bc71e1f3f006f7bd9d64eefe04e8b61
drh [Sat, 8 Apr 2023 19:23:13 +0000 (19:23 +0000)]
Fix a typo in [
83e84531b46814ae ] that changed the value of
SQLITE_DBCONFIG_STMT_SCANSTATUS.
FossilOrigin-Name:
b71776539183e5fd8678ce8f3272180d3dbb8214ed7b7bb24d35c0ba027a6ac5
drh [Sat, 8 Apr 2023 16:51:08 +0000 (16:51 +0000)]
Faster implementation of keywordCode() - the routine that determines if an
identifier is really a keyword and if so, which keyword.
FossilOrigin-Name:
0ff3d3d53709b7f18bf01ded1f988e41b7f8471072cf4f2702a3a8b79964be3f
drh [Sat, 8 Apr 2023 13:31:17 +0000 (13:31 +0000)]
drh [Sat, 8 Apr 2023 13:01:34 +0000 (13:01 +0000)]
Optimizations to btree.c save about 4.5 million CPU cycles:
(1) Clone insertCell() into a separate insertCellFast() routine for
use by sqlite3BtreeInsert(). (2) Mark allocateSpace() as always-inline.
(3) Improved coalesence of adjacent free blocks in pageFreeArray().
FossilOrigin-Name:
5c12c400fe8eb4e86e14c69a6c34d0d78d9861e5d40a36c6a596a81c6dd65977
drh [Fri, 7 Apr 2023 18:27:32 +0000 (18:27 +0000)]
Guard against oversized cells in the newly enhanced pageFreeArray().
FossilOrigin-Name:
2dcdbb50356edbd3a79e53fa0bee4e700c2bdea78e27173b62ddabe44b066726
drh [Fri, 7 Apr 2023 16:30:33 +0000 (16:30 +0000)]
drh [Fri, 7 Apr 2023 15:49:42 +0000 (15:49 +0000)]
drh [Fri, 7 Apr 2023 15:07:58 +0000 (15:07 +0000)]
drh [Fri, 7 Apr 2023 14:33:33 +0000 (14:33 +0000)]
Clone insertCell() into insertCellFast() for use by sqlite3BtreeInsert() for
a substantial performance increase.
FossilOrigin-Name:
f225afd90c8e65661d8b855050f0ee1a8fe4c0f3bcec824aa5a66d906f3c7119
dan [Fri, 7 Apr 2023 14:03:30 +0000 (14:03 +0000)]
Fix a problem causing the rbu_exclusive_checkpoint=1 to be ignored with zipvfs databases.
FossilOrigin-Name:
d8f50b31e8d64fce5141da4a016767a15482703364692a55df346f059fc9d30c
drh [Fri, 7 Apr 2023 13:21:20 +0000 (13:21 +0000)]
Small performance improvement in freeSpace().
FossilOrigin-Name:
8dc5292ee592f16451441e33ad0800ba10a21ecd63f1f9926d6915a59a1552d3
dan [Fri, 7 Apr 2023 11:18:08 +0000 (11:18 +0000)]
Add further tests for the rbu_exclusive_lock=1 URI option.
FossilOrigin-Name:
c07b62bef96bb69e9b1ce08f0084fdce8de981f4d8ea9689c87a41f1e4451ac7
drh [Thu, 6 Apr 2023 20:14:10 +0000 (20:14 +0000)]
Increase the size of the cache of free blocks inside of pageFreeArray() to
reduce the number of calls to freeSpace().
FossilOrigin-Name:
27c59f1ea789f3ff245f23e79ded5cd71c48e3a51ffbb8c220b51101a4e69fd7
drh [Thu, 6 Apr 2023 17:29:38 +0000 (17:29 +0000)]
Work around a harmless assertion fault associated with
sqlite3VdbeMemAboutToChange() such that the detection of stale values
in registers is preserved in debugging builds, but we avoid a false-positive
assertion fault in cases involving a virtual table with a LIMIT clause
in an IN-operator loop.
dbsqlfuzz
3fd70d4ab4950acf1deb8f610a7a7c67cd38713b
FossilOrigin-Name:
56ea2c2fe6108d39833ac40957afab59ade01a216639d5bafdeeca53bbf4cd67
drh [Thu, 6 Apr 2023 13:35:42 +0000 (13:35 +0000)]
A prepared statement that aborts due to SQLITE_SCHEMA should not invalidate
cursors in other prepared statements that are already running.
See [forum:/forumpost/
cae4367d9b |forum post
cae4367d9b ] for the original
trouble report.
FossilOrigin-Name:
857d0f5e16ba69ac9e5ee581befca2f7ed933edfe6e36396b10dae7979b44a57
drh [Thu, 6 Apr 2023 01:05:52 +0000 (01:05 +0000)]
In the CLI, during error processing while looking for a word boundary,
avoid being deceived by malformed input that has a very long sequence
of 0x80 characters.
[forum:/forumpost/
ab93a23ba1 |forum post
ab93a23ba1 ].
FossilOrigin-Name:
82609d5a2d4eba741d48ea265f4e749578964961903c072c7b222ffe2aefaa3c
drh [Thu, 6 Apr 2023 00:59:41 +0000 (00:59 +0000)]
In the zipfile extension, defend against corrupt ZIP files that contain
a zero-length filename.
[forum:/forumpost/
b15f5e3ad8 |Forum post
b15f5e3ad8 ].
FossilOrigin-Name:
46db2e42a5f9b18da9661ccedca68cb70257ea5c58b33b401db2a5e030c1346a
drh [Thu, 6 Apr 2023 00:18:31 +0000 (00:18 +0000)]
In the new .scanstatus command in the CLI, make sure the database is opened
before invoking sqlite3_db_config().
[forum:/forumpost/
6e26dcf544 |Forum post
6e26dcf544 ].
FossilOrigin-Name:
1cd993c45cd6b60e00d1426dd01d63efad13f7258636b5fa694f21499e77955a