]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
2 years agoFix straggler misspellings and tidy the custom dictionary. Also include pickups from... spell-check
larrybr [Wed, 7 Jun 2023 17:03:22 +0000 (17:03 +0000)] 
Fix straggler misspellings and tidy the custom dictionary. Also include pickups from [forum:/info/c61fb09afd|forum post c61fb09afd].

FossilOrigin-Name: 8c291d99946eb32b20b743921202f9c7cfb716268ff526817b27adbb7942e40b

2 years agoRemove additional traces of FTS1 and FTS2 that were missed by [2bb50d5aedef0fd2]
drh [Wed, 7 Jun 2023 15:00:54 +0000 (15:00 +0000)] 
Remove additional traces of FTS1 and FTS2 that were missed by [2bb50d5aedef0fd2]

FossilOrigin-Name: 9a12bac5d24c7a8364d2127fd12c3409a53ef83e408d10f344ddd311cdba98af

2 years agoRemove unused, legacy shell script "mkso.sh" from the root of the repo.
drh [Wed, 7 Jun 2023 14:47:29 +0000 (14:47 +0000)] 
Remove unused, legacy shell script "mkso.sh" from the root of the repo.

FossilOrigin-Name: 57f75e48690bdeb9b6bb3f46eee39021e3eb8cc0c488d2584177baa11ac984e5

2 years agoAdd a C-source spell-checking facility. make misspell (on Nix)
larrybr [Wed, 7 Jun 2023 08:40:31 +0000 (08:40 +0000)] 
Add a C-source spell-checking facility. make misspell (on Nix)

FossilOrigin-Name: 26c1bb4bd9e9f56613c3aa87407a7f562fd4ebde5bfd6dece02078001d9a45f8

2 years agoFix compiler warning in src-verify.c.
drh [Mon, 5 Jun 2023 17:12:33 +0000 (17:12 +0000)] 
Fix compiler warning in src-verify.c.

FossilOrigin-Name: 2d58c77448cfaaf12887b60bcfea039d3410a750ac8955a817c45be85c00eb9e

2 years agoUpdate the README.md file to talk about the verify-source makefile target.
drh [Mon, 5 Jun 2023 13:57:37 +0000 (13:57 +0000)] 
Update the README.md file to talk about the verify-source makefile target.

FossilOrigin-Name: aa8e79e16abf028d50370ae13b6c952a7b7f42985125bc8e7f51b20a10bfc336

2 years agoRemove extraneous console trace output from previous check-in.
stephan [Mon, 5 Jun 2023 11:30:50 +0000 (11:30 +0000)] 
Remove extraneous console trace output from previous check-in.

FossilOrigin-Name: c9f6e36d59fc8bf2bcef6fc14ff2e9ad3dfd972de94d4a71ff3f56134810a8ef

2 years agoAdd a JS test confirming that binding of statement parameters in a subquery works.
stephan [Mon, 5 Jun 2023 11:26:59 +0000 (11:26 +0000)] 
Add a JS test confirming that binding of statement parameters in a subquery works.

FossilOrigin-Name: 5dfaf0bce83c3e15ad605e3f07291ce219f1a2726ce77be27779897088ee13d5

2 years agoGeneralize the src-verify.c utility program and provide additional documentation
drh [Mon, 5 Jun 2023 01:05:46 +0000 (01:05 +0000)] 
Generalize the src-verify.c utility program and provide additional documentation
in the header comment.

FossilOrigin-Name: 7ed84046ef0c2c64031cac3a3a6b43aac3ac40aeb36838d8d046493f2d5ed122

2 years agoMinor cosmetic normalizations for the MSVC makefile.
mistachkin [Mon, 5 Jun 2023 00:57:38 +0000 (00:57 +0000)] 
Minor cosmetic normalizations for the MSVC makefile.

FossilOrigin-Name: c9fda8d6dba36841415d0f445b4081b051bfaa70428b605ac0b9ca4ae98f7d49

2 years agoFix harmless compiler warnings in tool/src-verify.c
drh [Sun, 4 Jun 2023 22:59:20 +0000 (22:59 +0000)] 
Fix harmless compiler warnings in tool/src-verify.c

FossilOrigin-Name: 0e79ee97b18792dba9213bd9961f53e2bae765ac92df7963703d08857da74fd1

2 years agoEnhancement to tool/src-verify.c to also check the manifest.uuid file.
drh [Sun, 4 Jun 2023 22:56:31 +0000 (22:56 +0000)] 
Enhancement to tool/src-verify.c to also check the manifest.uuid file.

FossilOrigin-Name: a39a569482a35610fdaa2fdfc88491d8b456dfedb4786c817e0502eb3e3a5563

2 years agoAdd a prototype implementation for the "verify-source" Makefile target.
drh [Sun, 4 Jun 2023 22:41:52 +0000 (22:41 +0000)] 
Add a prototype implementation for the "verify-source" Makefile target.

FossilOrigin-Name: ed876ff6a1a6a2d555f32b96eb78d95eaf8428ee189f968c43f0829a3065bfa7

2 years agoClarify sqlite3_is_interrupted() return. No code change.
larrybr [Fri, 2 Jun 2023 21:31:15 +0000 (21:31 +0000)] 
Clarify sqlite3_is_interrupted() return. No code change.

FossilOrigin-Name: b6c2d3d203100a34335aeba23a8fb82a13297b65eed494d5044ade3bed683bc3

2 years agoRestore the LEFT JOIN strength reduction that was partially lost in
drh [Fri, 2 Jun 2023 18:05:54 +0000 (18:05 +0000)] 
Restore the LEFT JOIN strength reduction that was partially lost in
[d747afda5683ca5f] when strength reduction was generalized to all OUTER JOINs.

FossilOrigin-Name: 2d962b84dd8ac2d0968f0283f8f082c1c2a7a1f99b59053b2ad8f58745396447

2 years agoDo that last CLI fix more simply, using established means.
larrybr [Fri, 2 Jun 2023 13:31:12 +0000 (13:31 +0000)] 
Do that last CLI fix more simply, using established means.

FossilOrigin-Name: a1823b297616bc2bd64eda9df4850fb460d8da8959ae3728195db896d1f89e7b

2 years agoFix CLI fault on missing -nonce reported by [forum:/info/f8c14a1134|forum post f8c14a...
larrybr [Fri, 2 Jun 2023 12:56:32 +0000 (12:56 +0000)] 
Fix CLI fault on missing -nonce reported by [forum:/info/f8c14a1134|forum post f8c14a1134].

FossilOrigin-Name: cd24178bbaad4a1dafc3848e7d74240f90030160b5c43c93e1e0e11b073c2df5

2 years agoFix the OUTER JOIN strength reduction theorem prover's handling of the CASE
drh [Fri, 2 Jun 2023 00:03:28 +0000 (00:03 +0000)] 
Fix the OUTER JOIN strength reduction theorem prover's handling of the CASE
operator.

FossilOrigin-Name: 73d7b14b1713d93c4ae07995e9aa6485cbad90bd6125584dbaeccb0cc9410ea3

2 years agoGeneralize the LEFT JOIN strength reduction optimization so that it works for
drh [Thu, 1 Jun 2023 20:38:22 +0000 (20:38 +0000)] 
Generalize the LEFT JOIN strength reduction optimization so that it works for
RIGHT and FULL JOIN as well.  Rename it to the "OUTER JOIN strength reduction"
optimization.

FossilOrigin-Name: d747afda5683ca5feb92866a14ccc4c5127d3378ece5cad2c3da819f2477b457

2 years agoIf the filename argument to sqlite3_load_extension() is an empty string, then
drh [Thu, 1 Jun 2023 16:40:28 +0000 (16:40 +0000)] 
If the filename argument to sqlite3_load_extension() is an empty string, then
raise an error.  It turns out that if dlopen() is called with an empty
filename, it tries to load the current executable.  And then if the caller
requests some other function from the current executable, mischief can result.

FossilOrigin-Name: d01688554715eb4aaa1b1fd1a6b660b84e930edb0e062156ecf5228ee81ca754

2 years agoAdd an ALWAYS() on an unreachable branch.
drh [Thu, 1 Jun 2023 00:28:11 +0000 (00:28 +0000)] 
Add an ALWAYS() on an unreachable branch.

FossilOrigin-Name: a00928d48061c1169d5564996e19e7d7c2b962842100bb119846d0f696123c23

2 years agoFix the LEFT JOIN strength reduction for IN operators in the WHERE clause.
drh [Thu, 1 Jun 2023 00:01:20 +0000 (00:01 +0000)] 
Fix the LEFT JOIN strength reduction for IN operators in the WHERE clause.
Further simplifications and refinement of the algorithm.

FossilOrigin-Name: 96c72dde79d4069f6c2f81467a35b617633f86f7a7dcafbda991affdaa1f8537

2 years agoAdd a comment to explain why both sides of an AND must be non-null-row in order
drh [Wed, 31 May 2023 18:52:46 +0000 (18:52 +0000)] 
Add a comment to explain why both sides of an AND must be non-null-row in order
for the overall expression to be non-null-row.  No code changes.

FossilOrigin-Name: 8396032ce14a75f408f0a75bcb36a6504d5188f20886e275746a2c336a74296f

2 years agoImproved detection of when the LEFT JOIN strength reduction optimization
drh [Wed, 31 May 2023 18:35:12 +0000 (18:35 +0000)] 
Improved detection of when the LEFT JOIN strength reduction optimization
can be applied.

FossilOrigin-Name: f544a8e47cdd5ad7233887a558489983f4f305a39391ff463c43e2e4157da087

2 years agoMinor enhancement to the sqlite3_trace_v2() documentation. No code
drh [Wed, 31 May 2023 12:42:09 +0000 (12:42 +0000)] 
Minor enhancement to the sqlite3_trace_v2() documentation.  No code
changes.

FossilOrigin-Name: fba97230e38276f2a02fc24353c3d911dfa24f3a4f75f691de9461d4daf3ae54

2 years agoFix a problem causing an infinite loop in the recovery extension when processing...
dan [Wed, 31 May 2023 11:03:17 +0000 (11:03 +0000)] 
Fix a problem causing an infinite loop in the recovery extension when processing a corrupt free-block list.

FossilOrigin-Name: 5a516c6c7a25cec4d0a0cca530017a3299f7a332319f3e1f7cf12f53c32b88ca

2 years agoEnhancements to date/time functions:
drh [Tue, 30 May 2023 16:40:42 +0000 (16:40 +0000)] 
Enhancements to date/time functions:
(1) Add support for time-shift modifiers of the form (+|-)YYYY-MM-DD HH:MM:SS.SSS
(2) Add the timediff(A,B) SQL function that returns the time-shift modifier
sufficient to move B to A.

FossilOrigin-Name: 574bf370b0b9a72eb0468e0e121d4d6171fc533883b66d335f6794ef5ee1f051

2 years agoSimplifications to the new timediff() logic. timediff
drh [Tue, 30 May 2023 14:46:30 +0000 (14:46 +0000)] 
Simplifications to the new timediff() logic.

FossilOrigin-Name: d6954259bd3f8475f3804fd02a1591d037efa9df54da45776863c024ff90e596

2 years agoMinor tweak to the OPFS async proxy to attempt to account for a spurious high-load...
stephan [Tue, 30 May 2023 14:10:28 +0000 (14:10 +0000)] 
Minor tweak to the OPFS async proxy to attempt to account for a spurious high-load console error message which was reported via the sqlite-wasm npm project.

FossilOrigin-Name: a61467d1fbb7a2804bfdc685a38e0b738747b9afd42c25a78a938b114a822f61

2 years agoMinor internal JS doc fix. No code changes.
stephan [Tue, 30 May 2023 13:27:57 +0000 (13:27 +0000)] 
Minor internal JS doc fix. No code changes.

FossilOrigin-Name: 68abee3c1bf4e9ff632fccaa6ac7c5c4cdf55c4ff1749830ae3bd5ff6d55ebb2

2 years agoNew test cases for the timediff enhancements.
drh [Tue, 30 May 2023 11:51:45 +0000 (11:51 +0000)] 
New test cases for the timediff enhancements.

FossilOrigin-Name: f14633ce6ddf28a14b03e2da623d96e439966aa3fc30c26cb0be59c0e15b3e9c

2 years agoAll date/time modifiers of the form (+/-)YYYY-MM-DD without the following
drh [Tue, 30 May 2023 11:13:56 +0000 (11:13 +0000)] 
All date/time modifiers of the form (+/-)YYYY-MM-DD without the following
HH:MM:SS.SSS.

FossilOrigin-Name: fa9237a8ab803ca3f67fe753516b7bdb98be3d625e8e241ddf9b02509210e225

2 years agoProblems fixed. All tests are passing now.
drh [Tue, 30 May 2023 02:50:32 +0000 (02:50 +0000)] 
Problems fixed.  All tests are passing now.

FossilOrigin-Name: cff293b0a79107def7bfe54fd60ac4a721c5098c85229d9b46a4e2c4cbf34a6a

2 years agoImprovements to the timediff() function. Test cases added. Not all test
drh [Tue, 30 May 2023 02:16:33 +0000 (02:16 +0000)] 
Improvements to the timediff() function.  Test cases added. Not all test
cases are passing.

FossilOrigin-Name: 2cf6518140d61e2123dc20f39d7e97e7bce17e7641405df7fd63e1cdda444ae0

2 years agoNew date/time modifier: (+|-)YYYY-MM-DD HH:MM(:SS.SSS)?
drh [Mon, 29 May 2023 20:33:33 +0000 (20:33 +0000)] 
New date/time modifier:  (+|-)YYYY-MM-DD HH:MM(:SS.SSS)?

FossilOrigin-Name: 3832b8a9ef84d9b53b48dfce9c1e724897cd7b3e05711e01675419655f894eac

2 years agoPrototype implementation of a proposed "timediff(X,Y)" SQL function.
drh [Mon, 29 May 2023 18:01:42 +0000 (18:01 +0000)] 
Prototype implementation of a proposed "timediff(X,Y)" SQL function.

FossilOrigin-Name: 054a195125a273bab026ada5f07cc7c32818007027a1fd028ca59d2f179276d4

2 years agoFix an issue with sqldiff reported by
drh [Sat, 27 May 2023 20:08:23 +0000 (20:08 +0000)] 
Fix an issue with sqldiff reported by
[forum:/info/9bd2155bdfae25a7|forum post 9bd2155bdfae25a7].

FossilOrigin-Name: 736a79c1491065f4ee77ce644af0e529e555ca733c78dbd55487d55d4ddbe5bd

2 years agoAdd extra tests for fts5, large rowids and "ORDER BY rowid DESC". No changes to code.
dan [Sat, 27 May 2023 19:34:46 +0000 (19:34 +0000)] 
Add extra tests for fts5, large rowids and "ORDER BY rowid DESC". No changes to code.

FossilOrigin-Name: b5b5eaeed3ef55415e27aa04561ab446f3be881b56b7cbf9b8ba3307f0b2bf69

2 years agoAdd ability for the JS Worker1.exec() API to report the number of changes made to...
stephan [Thu, 25 May 2023 16:49:06 +0000 (16:49 +0000)] 
Add ability for the JS Worker1.exec() API to report the number of changes made to the caller, per request in [forum:d0b19483642e20dd | forum post d0b19483642e20dd].

FossilOrigin-Name: 6e79505df915612b60696e4eec5c9973175fe6ecf273eb3152b996e63ae54a07

2 years agoMinor cleanups in demo JS code, per forum feedback.
stephan [Tue, 23 May 2023 19:11:42 +0000 (19:11 +0000)] 
Minor cleanups in demo JS code, per forum feedback.

FossilOrigin-Name: 80c7c0360c08bea0733deccb8071920c60558b75df76b6afad093c82adf30ea6

2 years agoAvoid performing aggregate processing more than once for a single expression. [forum...
dan [Tue, 23 May 2023 17:35:18 +0000 (17:35 +0000)] 
Avoid performing aggregate processing more than once for a single expression. [forum:/info/36ff78b2a3|Forum post 36ff78b2a3].

FossilOrigin-Name: 367b4cc549a14222d54530538e692e9d1a365002c1b8c4ef80ddc0523bfdb3a2

2 years agoWhen converting an aggregate expression to AGG_COLUMN, be sure to remove
drh [Tue, 23 May 2023 15:16:20 +0000 (15:16 +0000)] 
When converting an aggregate expression to AGG_COLUMN, be sure to remove
the EP_Unlikely flag if it is present.
[forum:/info/fbfe330a2009d036|Forum post fbfe330a2009d036].

FossilOrigin-Name: 48e65f18b2ebbe786e84e208f2c6c68de6067ba86912fea5a120fd41d0af2184

2 years agoFix a buffer overread in the recovery extension that might occur on 32-bit platforms.
dan [Tue, 23 May 2023 14:05:02 +0000 (14:05 +0000)] 
Fix a buffer overread in the recovery extension that might occur on 32-bit platforms.

FossilOrigin-Name: ff4a9a2b59657116da99c748ada19dbc64b7d0fd4c920e1c517d8bda3466f06b

2 years agoAdd test cases for the recovery extension. No changes to code.
dan [Tue, 23 May 2023 11:47:56 +0000 (11:47 +0000)] 
Add test cases for the recovery extension. No changes to code.

FossilOrigin-Name: cec49c7d93362f527f0b4744cd1ae95d44a79671d49d69baa77fda70be29f7e8

2 years agoAvoid duplicate WIN32_LEAN_AND_MEAN #define. Fix a trivial nit likely never observed.
larrybr [Mon, 22 May 2023 20:36:55 +0000 (20:36 +0000)] 
Avoid duplicate WIN32_LEAN_AND_MEAN #define. Fix a trivial nit likely never observed.

FossilOrigin-Name: 81ffcf41d69ae73ee8c037f675e18e2b46a15bee34062914640456381262d6fc

2 years agoWhen a floating-point RTREE is presented with large integer constraints -
drh [Mon, 22 May 2023 16:35:21 +0000 (16:35 +0000)] 
When a floating-point RTREE is presented with large integer constraints -
integers that are too big to be represented exactly by a float - then take
extra steps to ensure that all possibly relevant entries in the RTREE are
returned, even in boundary cases.  Fix for the problem identified by
[forum:/forumpost/da70ee0d0d|forum post da70ee0d0d].

FossilOrigin-Name: bfd8d9100015f3e3fb011698963d670bd89b64ec8a8ab931e0c6c3076b029377

2 years agoFix a buffer overrun that could occur in fts5 when processing corrupt records.
dan [Mon, 22 May 2023 11:02:15 +0000 (11:02 +0000)] 
Fix a buffer overrun that could occur in fts5 when processing corrupt records.

FossilOrigin-Name: 4891dbd938f4bfd345eaef01f2addea9512eaa98f860844c73abb907b6a8e0e8

2 years agoExtend detection of the INSERT...RETURNING locking case to the DB.selectValue(s)...
stephan [Fri, 19 May 2023 18:23:53 +0000 (18:23 +0000)] 
Extend detection of the INSERT...RETURNING locking case to the DB.selectValue(s)/selectArray/selectObject() family of functions. Add tests for INSERT/UPDATE...RETURNING with those functions.

FossilOrigin-Name: 3181c50540df0eff6cb5db79bb477c469bb7b73b0692260ba600db200fcef4ac

2 years agoMinor doc typo fix.
stephan [Fri, 19 May 2023 17:59:21 +0000 (17:59 +0000)] 
Minor doc typo fix.

FossilOrigin-Name: 4533be08786306a4fcb4b21458444dffd0fa2764ebb2538313f3a16d9324cacc

2 years agooo1.Stmt.finalize() no longer throws, but instead returns the same as the C API....
stephan [Fri, 19 May 2023 17:50:16 +0000 (17:50 +0000)] 
oo1.Stmt.finalize() no longer throws, but instead returns the same as the C API. oo1.DB.exec() now triggers the INSERT...RETURNING locking failure as an exception via reset() instead of finalize(). Some code-adjacent internal API renaming for clarity's sake.

FossilOrigin-Name: 4ee6b3aa531b980acea4c4b58ee256e765c5105100468928def3d4c9825fa9bc

2 years agoImproved documentation for sqlite3_reset(), in response to
drh [Fri, 19 May 2023 16:42:49 +0000 (16:42 +0000)] 
Improved documentation for sqlite3_reset(), in response to
[forum:/forumpost/a72bab3dea|forum post a72bab3dea].

FossilOrigin-Name: 1dfeb3dceee8f30daf5462683f264b9de23e7068e036e70b11ee1b608ac2f7fa

2 years agosqlite3.oo1.Stmt.reset() now throws if sqlite3_reset() returns non-zero, analog to...
stephan [Fri, 19 May 2023 16:34:56 +0000 (16:34 +0000)] 
sqlite3.oo1.Stmt.reset() now throws if sqlite3_reset() returns non-zero, analog to [f23eb5c6d365].

FossilOrigin-Name: 487ae12c9a21e5862bd590bbb1030c39734657d52136cf67b98c7545e6ecbe1c

2 years agoAdd a basic INSERT RETURNING test for the oo1.DB.exec() API.
stephan [Fri, 19 May 2023 16:12:06 +0000 (16:12 +0000)] 
Add a basic INSERT RETURNING test for the oo1.DB.exec() API.

FossilOrigin-Name: d29d62cf7658aeb49f3c8a5d0b0809d945ebc9b79379a255eb88f771d2a2c430

2 years agosqlite3.oo1.Stmt.finalize() now throws if sqlite3_finalize() returns non-zero. This...
stephan [Fri, 19 May 2023 15:54:41 +0000 (15:54 +0000)] 
sqlite3.oo1.Stmt.finalize() now throws if sqlite3_finalize() returns non-zero. This is intended to address the INSERT RETURNING case covered in [forum:36f7a2e7494897df|forum post 36f7a2e7494897df].

FossilOrigin-Name: f23eb5c6d36546ee1e181a03660e0b2dc8005bba24bee8bae594b0c78bd152cd

2 years agoCorrect typo in an 'extern' decl name, reported in [forum:1d4342156439233b|forum...
stephan [Fri, 19 May 2023 12:41:14 +0000 (12:41 +0000)] 
Correct typo in an 'extern' decl name, reported in [forum:1d4342156439233b|forum post 1d4342156439233b].

FossilOrigin-Name: 6ac18827d8c5be35442dc452af703023c759916c179f165c4e54b3e430a8f7b0

2 years agoChange the RTREE engine so that equality comparisons of floating point
drh [Fri, 19 May 2023 11:48:05 +0000 (11:48 +0000)] 
Change the RTREE engine so that equality comparisons of floating point
values are duplicated in the byte-code so that the comparisons are done
using 64-bit floats and consistent results are always obtained.
[forum:/forumpost/da61c4a1b5b4af19|Forum post da61c4a1b5b4af19].

FossilOrigin-Name: 4ec0f0a31b0df93ad15545fe1db117c933e28c75ad3cbc8475b56fecdb084905

2 years agoFix incorrect b-tree root page reports from the enhanced PRAGMA integrity_check
drh [Thu, 18 May 2023 23:25:48 +0000 (23:25 +0000)] 
Fix incorrect b-tree root page reports from the enhanced PRAGMA integrity_check
output introduced in version 3.42.0.

FossilOrigin-Name: 9b538f62539bcde7d7d7ad06eccdc558ecbd3f9160db35197568f4d3b4247c76

2 years agoFast-path the btree transaction start for the common case where a
drh [Wed, 17 May 2023 19:23:24 +0000 (19:23 +0000)] 
Fast-path the btree transaction start for the common case where a
transaction is already active.

FossilOrigin-Name: 798c3ff20c606b5f9fde16dc67781f238370a7c450bc239c3a98d0f4ca370399

2 years agoSimplification, performance improvement, and size reduction in the
drh [Wed, 17 May 2023 16:13:48 +0000 (16:13 +0000)] 
Simplification, performance improvement, and size reduction in the
codeAllEqualityTerms() function of the code generator.

FossilOrigin-Name: 4fbe02651e877e442d62308d7f607e503695104cd71c5565132fcd1398c120df

2 years agoNew assert() statements to verify that Expr.iColumn is never used as an
drh [Wed, 17 May 2023 15:46:46 +0000 (15:46 +0000)] 
New assert() statements to verify that Expr.iColumn is never used as an
array index when its value is negative.

FossilOrigin-Name: 6084c5fb6d3fcedf35cd6c597a44ec7bf8b4a2576c7b277e5342d2a7905318e7

2 years agoImproved assertions on substExpr().
drh [Wed, 17 May 2023 13:21:45 +0000 (13:21 +0000)] 
Improved assertions on substExpr().

FossilOrigin-Name: 6dbd5b3cc801a75ea23842a43eb7106b62fc1d26dd5a8477a0217325539a7c1a

2 years agoAvoid an assert() failure that could occur in SQLITE_ENABLE_UPDATE_DELETE_LIMIT build...
dan [Wed, 17 May 2023 11:31:51 +0000 (11:31 +0000)] 
Avoid an assert() failure that could occur in SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds when a WITH clause attached to an UPDATE or DELETE statement created a CTE of the same name as the table being modified.

FossilOrigin-Name: 8edf56d1698c3db38250db3b25864f658488414efb3a6b3e1443283b6affd26d

2 years agoFix two assert() statements that failed to take into account
drh [Wed, 17 May 2023 00:26:50 +0000 (00:26 +0000)] 
Fix two assert() statements that failed to take into account
the likely() built-in function.  This does not impact production code.

FossilOrigin-Name: 8504fe812c5b4956c8acad515d537add54cb591bc81747113f9b24526d7685b8

2 years agoIncrease the version number to 3.43.0 in order to begin the next
drh [Tue, 16 May 2023 14:20:04 +0000 (14:20 +0000)] 
Increase the version number to 3.43.0 in order to begin the next
development cycle.

FossilOrigin-Name: 7874023cd460cbe05401433b8e695a77955e2c055c360a93b92d4ce6937bd136

2 years agoResolve the JS-side corner case reported in [forum:7774b773937cbe0a | forum post...
stephan [Tue, 16 May 2023 14:18:48 +0000 (14:18 +0000)] 
Resolve the JS-side corner case reported in [forum:7774b773937cbe0a | forum post 7774b773937cbe0a] by not caching oo1.Stmt.columnCount.

FossilOrigin-Name: 37d44e8c447626738a8a7f915a9bc3f35fbb95581236dd152fc119b0c3a24c2a

2 years agoVersion 3.42.0 version-3.42.0
drh [Tue, 16 May 2023 12:36:15 +0000 (12:36 +0000)] 
Version 3.42.0

FossilOrigin-Name: 831d0fb2836b71c9bc51067c49fee4b8f18047814f2ff22d817d25195cf350b0

2 years agoUpdate the tool/mkmsvcmin.tcl script so that it prints a one-line message
drh [Tue, 16 May 2023 12:34:26 +0000 (12:34 +0000)] 
Update the tool/mkmsvcmin.tcl script so that it prints a one-line message
to explain what it has done.

FossilOrigin-Name: 4254f086419892634c80b0b915e14edea365adc6a45bcc75eecba889da274ac3

2 years agoFix a C++-style variable declaration in the generate_series() extension.
drh [Mon, 15 May 2023 19:17:31 +0000 (19:17 +0000)] 
Fix a C++-style variable declaration in the generate_series() extension.

FossilOrigin-Name: 1d3e008905461ebbd3ea0a862672f740fa72914d4d59fcf800e1ce56f1edfc9d

2 years agoLimit the number of nested NOT nodes in an fts5 expression to 256.
dan [Mon, 15 May 2023 17:24:48 +0000 (17:24 +0000)] 
Limit the number of nested NOT nodes in an fts5 expression to 256.

FossilOrigin-Name: 01219e69b430c8f5fea5ab6ce511ba8c9b4c9b32b6d2d36623dde99c3d3812c9

2 years agoIncrease the stack size available to fuzzcheck to 8MB on Windows.
drh [Mon, 15 May 2023 17:20:21 +0000 (17:20 +0000)] 
Increase the stack size available to fuzzcheck to 8MB on Windows.

FossilOrigin-Name: 2290dc6876041bcc982f162f59fdc9fd98b0983e1058c0a33fd46937ecc4bd84

2 years agoLimit the number of nested NOT nodes in an fts5 expression to 256. fts5-expr-limit
dan [Mon, 15 May 2023 17:14:16 +0000 (17:14 +0000)] 
Limit the number of nested NOT nodes in an fts5 expression to 256.

FossilOrigin-Name: 0e5c1ee40a146ef8b2b3c5f53d0a45e092bc8d8e933f3819805c995819d31bae

2 years agoAdd the --wait command-line option to fuzzcheck.
drh [Mon, 15 May 2023 10:55:04 +0000 (10:55 +0000)] 
Add the --wait command-line option to fuzzcheck.

FossilOrigin-Name: 5a479a2c7637a018d1828d9d37973bf3d36a2fc4cd5b752bca61a41cd0920d39

2 years agoMake generate_series() correct on ones complement ALUs and acceptable to UBSAN.
larrybr [Mon, 15 May 2023 03:48:48 +0000 (03:48 +0000)] 
Make generate_series() correct on ones complement ALUs and acceptable to UBSAN.

FossilOrigin-Name: 4c5cd3e6968c44749b7663beee790969b41d247b9201b771ef90cbb03d09108f

2 years agoAs evidenced by [forum:/forumpost/f3f546025a|forum post f3f546025a], the
drh [Mon, 15 May 2023 02:06:35 +0000 (02:06 +0000)] 
As evidenced by [forum:/forumpost/f3f546025a|forum post f3f546025a], the
new RIGHT JOIN related restriction on the push-down optimization implemented
by [da3fba18742b6e0b] also needs to apply to the automatic index
(a.k.a. hash-join) optimization and to the Bloom filter optimization.
Computation of the restriction is now
moved into the sqlite3ExprIsSingleTableConstraint() routine.

FossilOrigin-Name: 4902015dcf3869f08d9986e422faa231d9218a5e0fc59ba8df0f407e4eb3d605

2 years agoSimplify the interface to constructAutomaticIndex().
drh [Mon, 15 May 2023 01:02:50 +0000 (01:02 +0000)] 
Simplify the interface to constructAutomaticIndex().

FossilOrigin-Name: c5da16551619718bf649c517515261706843e11e131f0b99e1fd6927d0f7e238

2 years agoFix windows-specific problems in test scripts sessionnoop2.test and sessionrowid...
dan [Sat, 13 May 2023 20:01:27 +0000 (20:01 +0000)] 
Fix windows-specific problems in test scripts sessionnoop2.test and sessionrowid.test.

FossilOrigin-Name: e4989c111ddffe6818cbb88a72bd027b30124d1e8de0cce4109c72a214ffb5b8

2 years agoRemove unnecessary call to sqlite3_dbdata_init() from shell.c.
dan [Sat, 13 May 2023 19:38:30 +0000 (19:38 +0000)] 
Remove unnecessary call to sqlite3_dbdata_init() from shell.c.

FossilOrigin-Name: 84ca2000007d217f911a3b1586143fc9261c0697a9e9fadda6bd3dd6afdfb099

2 years agoAdd an "#ifndef SQLITE_HAVE_SQLITE3R" directive to shell.c.in, to avoid including...
dan [Sat, 13 May 2023 19:13:40 +0000 (19:13 +0000)] 
Add an "#ifndef SQLITE_HAVE_SQLITE3R" directive to shell.c.in, to avoid including the recovery code a second time if the shell is being compiled with sqlite3r.c.

FossilOrigin-Name: 6f1a60fb7b3ef463b4131dfecbc72b7c778c794a9aa13ce4617ab6dd895508b2

2 years agoMention that sqlite3_mutex_free() accepts NULL as a no-op.
larrybr [Sat, 13 May 2023 15:34:15 +0000 (15:34 +0000)] 
Mention that sqlite3_mutex_free() accepts NULL as a no-op.

FossilOrigin-Name: 603d9ad5012ca8996783996d7b8cd6a1aabf12b21604a2ccc137f4c2d99427b9

2 years agoFix compilation issue seen with MSVC.
mistachkin [Sat, 13 May 2023 05:13:29 +0000 (05:13 +0000)] 
Fix compilation issue seen with MSVC.

FossilOrigin-Name: 67001887044da71ab50c07d8345bd950a0a1f9688cf9cd6966312ea163cf6e17

2 years agoFix harmless compiler warning caused by [0772ddf56713d013].
drh [Fri, 12 May 2023 19:06:00 +0000 (19:06 +0000)] 
Fix harmless compiler warning caused by [0772ddf56713d013].

FossilOrigin-Name: f06c16a8b0e7a15ce4f7d99af3376a1bf1bfbfc0fdc048b079418ae74c619d6b

2 years agoAdd multi-threaded test for "INSERT ... RETURNING ..." and SQLITE_BUSY errors.
dan [Fri, 12 May 2023 19:02:50 +0000 (19:02 +0000)] 
Add multi-threaded test for "INSERT ... RETURNING ..." and SQLITE_BUSY errors.

FossilOrigin-Name: 559cb1c6de384fd14160db005acaf1858b8b018d3d40d7f786a56a49d3cdbd59

2 years agoMake the regexp extension more robust against OOM errors during compilation
drh [Fri, 12 May 2023 15:45:34 +0000 (15:45 +0000)] 
Make the regexp extension more robust against OOM errors during compilation
of the recognizer engine.
[forum:/forumpost/f50aecd5e8|Forum post f50aecd5e8].

FossilOrigin-Name: 0772ddf56713d013cd1bd44f9c75977ca14f852e3a8f038b0a6b9814f6519d79

2 years agoFix unlikely strange result of CLI edit().
larrybr [Fri, 12 May 2023 14:51:00 +0000 (14:51 +0000)] 
Fix unlikely strange result of CLI edit().

FossilOrigin-Name: ab3797e844c97fed344b36f30cfb788aca9e0d68c574fb833712219eb712db44

2 years agoEnsure the _O_U16TEXT is defined for Windows builds of the CLI.
drh [Fri, 12 May 2023 13:20:57 +0000 (13:20 +0000)] 
Ensure the _O_U16TEXT is defined for Windows builds of the CLI.
[forum:/forumpost/c80aa942dc6bf2|Forum post c80aa942dc6bf2].

FossilOrigin-Name: 504effa89b48c0dc6cd12b3eaf6017be3f32017c601af17759a3cc185346d868

2 years agoRemove a stray CR from end of line in a source file.
drh [Fri, 12 May 2023 12:57:44 +0000 (12:57 +0000)] 
Remove a stray CR from end of line in a source file.

FossilOrigin-Name: 48139fb904de4b7b383e7f8c29bed83ad878eb22b1dd773c366a0aee74613d23

2 years agoFix harmless typos in comments.
drh [Fri, 12 May 2023 12:45:56 +0000 (12:45 +0000)] 
Fix harmless typos in comments.

FossilOrigin-Name: 607c3efbe0293d7c11a955a9f21e24fb9f7f1bb758e13e60f4ba0cc0ac8b900c

2 years agoEnsure that all prepared statements are expired and forced to reprepare
drh [Fri, 12 May 2023 10:52:12 +0000 (10:52 +0000)] 
Ensure that all prepared statements are expired and forced to reprepare
whenever the database text encoding changes.
[forum:/forumpost/43cbfc4d23|Forum post 43cbfc4d23].

FossilOrigin-Name: 469718f106e1cfa7f8f4714a9e743108c361af81e0258061c2b76880a7c352ae

2 years agoAdd [/info/cec6a06508239c09e363?ln=5525-5531|restriction (5)] to the
drh [Thu, 11 May 2023 21:15:55 +0000 (21:15 +0000)] 
Add [/info/cec6a06508239c09e363?ln=5525-5531|restriction (5)] to the
omit-noop-join optimization.  Fix for the issue reported by
[forum/forumpost/49f2c7f690|forum post 49f2c7f690].

FossilOrigin-Name: 3e9c9bbdb59b9d500ff218db538c047c83da7ac18ebb95c3ee7629ab15e0b43a

2 years agoFix a minor typo in a comment. No code changes.
drh [Thu, 11 May 2023 18:03:11 +0000 (18:03 +0000)] 
Fix a minor typo in a comment.  No code changes.

FossilOrigin-Name: 607cfb5bc5c0fb8b789944c2326cfdebf0629e45fbf0a61dd5f667ed685a1bbe

2 years agoFix the rbu_exclusive_checkpoint=1 option so that it works with a zipvfs database...
dan [Thu, 11 May 2023 17:25:14 +0000 (17:25 +0000)] 
Fix the rbu_exclusive_checkpoint=1 option so that it works with a zipvfs database in pass-through mode.

FossilOrigin-Name: caca67d30670913914335aa3edff784e1c3d26aed70ae32efb5607ccf31ad142

2 years agoDoc typo fix. No code changes. oo1-no-cache-Stmt.columnCount
stephan [Wed, 10 May 2023 21:08:01 +0000 (21:08 +0000)] 
Doc typo fix. No code changes.

FossilOrigin-Name: e841b142f583e49350c7cdd14dc4da72434cc67c7b521ae741e03e37e785d7e0

2 years agoResolve the JS-side corner case reported in [forum:7774b773937cbe0a | forum post...
stephan [Wed, 10 May 2023 21:06:02 +0000 (21:06 +0000)] 
Resolve the JS-side corner case reported in [forum:7774b773937cbe0a | forum post 7774b773937cbe0a] by not caching oo1.Stmt.columnCount.

FossilOrigin-Name: c3d25c3a25e79e01c4ad0cf11f7dc3b0fb1932f3bcd04935a728ef62f7e07cf1

2 years agoEnhance the split-sqlite3c.tcl script so that it uses single-character
drh [Wed, 10 May 2023 16:04:04 +0000 (16:04 +0000)] 
Enhance the split-sqlite3c.tcl script so that it uses single-character
extensions on subordinate source files, even when the number of subordinates
exceeds 9.  This is not yet needed, but might be soon.

FossilOrigin-Name: 4150e416263f24efcbfe68d5b1e15ec7e79df41dff0b6dfdc59f06ee9e205049

2 years agoFix harmless compiler warnings from the CBMC compiler.
drh [Wed, 10 May 2023 13:56:32 +0000 (13:56 +0000)] 
Fix harmless compiler warnings from the CBMC compiler.

FossilOrigin-Name: 5bc17cbccdd369486fca049be9d7457e18f162c0e2f5475809ffc8f01c5fa9d2

2 years agoRename sqlite3IsTableConstraint() to sqlite3IsSingleTableConstraint() and
drh [Wed, 10 May 2023 11:05:59 +0000 (11:05 +0000)] 
Rename sqlite3IsTableConstraint() to sqlite3IsSingleTableConstraint() and
improve its header comment, in an attempt to make the code easier to reason
about.  No functional changes - should generate identical machine code.

FossilOrigin-Name: 5dae897431a0a9dbb354c4a8a48f935ea7438035d96f90b83dd81eae434c8277

2 years agoAdd a missing comma to the documentation for the OP_Jump opcode. No changes
drh [Wed, 10 May 2023 10:03:28 +0000 (10:03 +0000)] 
Add a missing comma to the documentation for the OP_Jump opcode.  No changes
to code.

FossilOrigin-Name: 7e2c2b1cee760af68cf303ce9ec1babbaf607fe54e043893c046d2d37cd0ab46

2 years agoNew restriction on the push-down optimization to prevent an ON or USING clause
drh [Wed, 10 May 2023 00:33:21 +0000 (00:33 +0000)] 
New restriction on the push-down optimization to prevent an ON or USING clause
on the left side of a RIGHT JOIN from being pushed down into a subquery that
is on the right side of that RIGHT JOIN.
[forum:/forumpost/a7d4be7fb6|Forum post a7d4be7fb6].
Also add comments to describe previously undocumented push-down optimization
restrictions.

FossilOrigin-Name: da3fba18742b6e0bd5290bee9d86a2d5cb1ff2de25d737ef93060d7c1143273f

2 years agoFix bug in fall-back logic of CLI .clone
larrybr [Wed, 10 May 2023 00:20:42 +0000 (00:20 +0000)] 
Fix bug in fall-back logic of CLI .clone

FossilOrigin-Name: 0dcd9785c11e33e6393b7c1be1ff8fe7129f280439aed12de22d4687609a8bac

2 years agoFix recover1.test so that it works with DEFAULT_AUTOVACUUM builds.
dan [Mon, 8 May 2023 16:26:22 +0000 (16:26 +0000)] 
Fix recover1.test so that it works with DEFAULT_AUTOVACUUM builds.

FossilOrigin-Name: 4ffae48e831eedf8f5e61dc6d38817c0fdccfb2f4f1189d07f9722b9e3a48b5e