]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
6 months agoVersion 3.44.0 major-release version-3.44.0
drh [Wed, 1 Nov 2023 11:23:50 +0000 (11:23 +0000)] 
Version 3.44.0

FossilOrigin-Name: 17129ba1ff7f0daf37100ee82d507aef7827cf38de1866e2633096ae6ad81301

6 months agoFix harmless compiler warnings in test code.
drh [Tue, 31 Oct 2023 17:40:30 +0000 (17:40 +0000)] 
Fix harmless compiler warnings in test code.

FossilOrigin-Name: d1895dd8f5757a339f619f22b29c8a739398ded673bb9c93f1b8eb8a4b38f510

6 months agoFix a problem with SQLITE_ENABLE_FTS5 builds of the non-amalgamation testfixture...
dan [Tue, 31 Oct 2023 17:39:10 +0000 (17:39 +0000)] 
Fix a problem with SQLITE_ENABLE_FTS5 builds of the non-amalgamation testfixture.exe in Makefile.msc.

FossilOrigin-Name: 544091cc0f5b7395a89226629267c858ec53f18095aadb3e9307ef8ea718176e

6 months agoRemedy CLI non-UTF8 handling detection flaw [forum:/forumpost/fa0e00d36db5fe0a|noted...
larrybr [Mon, 30 Oct 2023 23:20:45 +0000 (23:20 +0000)] 
Remedy CLI non-UTF8 handling detection flaw [forum:/forumpost/fa0e00d36db5fe0a|noted in a forum post].

FossilOrigin-Name: a4c7954b9380dfd3599e521f7fd40b8b556a7d0268198b302146311d20c3b162

6 months agoRemedy CLI non-UTF8 handling detection flaw [forum:/forumpost/fa0e00d36db5fe0a|noted... win-utf8-io-split
larrybr [Mon, 30 Oct 2023 23:04:27 +0000 (23:04 +0000)] 
Remedy CLI non-UTF8 handling detection flaw [forum:/forumpost/fa0e00d36db5fe0a|noted in a forum post].

FossilOrigin-Name: 2666b80d2cf64a14d0482ee1ce0e8b2ff9e0c5bb21cd626470241a73a6555a3a

6 months agoUpdate the autoconf/Makefile.msc so that it aligns with Makefile.msc.
drh [Mon, 30 Oct 2023 20:35:33 +0000 (20:35 +0000)] 
Update the autoconf/Makefile.msc so that it aligns with Makefile.msc.

FossilOrigin-Name: c4f724de279dae1afd10d435ad61ed07c1e4658288457c50e4f9b2f4521bbe12

6 months agoDodge a nuisance warning from MSVC in CLI use of Prepared Statement Scan Status....
larrybr [Mon, 30 Oct 2023 19:50:20 +0000 (19:50 +0000)] 
Dodge a nuisance warning from MSVC in CLI use of Prepared Statement Scan Status. (Yes, C rules are fine.)

FossilOrigin-Name: 166c96d91dcc8c500a084d5703db103176ed5ec7d5f1334050cd66b3f1cd0e4f

6 months agoAdd a cast to i64 for an integer in an sqlite3OsWrite() offset
drh [Mon, 30 Oct 2023 19:03:17 +0000 (19:03 +0000)] 
Add a cast to i64 for an integer in an sqlite3OsWrite() offset
calculation.  The cast is not strictly necessary, but it helps human readers
see that the code is correct.

FossilOrigin-Name: 7564ff1ba2c2fba89106d1aa06cc5379e752f119f22370f2f155f24cc698dec6

6 months agoFix another comment typo. No code changes.
drh [Mon, 30 Oct 2023 18:48:03 +0000 (18:48 +0000)] 
Fix another comment typo.  No code changes.

FossilOrigin-Name: 3203256c0285ef2fea810d59978603bfd7e38151cbc42e1baddf84b57c56f638

6 months agoAdd FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS...
dan [Mon, 30 Oct 2023 18:17:29 +0000 (18:17 +0000)] 
Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds.

FossilOrigin-Name: e41fde2fdb999b430561ac6d6ba150666ad1858e99c973f8dcd04a6934991032

6 months agoMake the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces
drh [Mon, 30 Oct 2023 18:09:14 +0000 (18:09 +0000)] 
Make the new sqlite3_get_clientdata() and sqlite3_set_clientdata() interfaces
available to run-time loaded extensions.

FossilOrigin-Name: 8fc9aa0f896a2676b73c41cefbff74c822a7106b56324558862dd0a2a1877eaf

6 months agoFix problems with previous commit on Makefile.msc. Also some win32-specific test... shell-build-changes
dan [Mon, 30 Oct 2023 18:07:18 +0000 (18:07 +0000)] 
Fix problems with previous commit on Makefile.msc. Also some win32-specific test failures in fts5misc.test.

FossilOrigin-Name: 527f2237a6fb5e2ac97afddd7c65c0afa971efc616cb3b738e7245ee0b8d9570

6 months agoFix typo in a comment. No code changes.
drh [Mon, 30 Oct 2023 17:56:27 +0000 (17:56 +0000)] 
Fix typo in a comment.  No code changes.

FossilOrigin-Name: 424ef9550abaab32f745dc955e8996d51836eaed737e24c4b4db811aa118ce5d

6 months agoAdd FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS...
dan [Mon, 30 Oct 2023 17:13:12 +0000 (17:13 +0000)] 
Add FTS5 to default Makefile.msc builds. And UNKNOWN_SQL_FUNCTION and STMT_SCANSTATUS to default Makefile.msc shell builds.

FossilOrigin-Name: bf99ebba23b6a72a0c02c5542574f409828343e89501cbe2112596ced063c6ab

6 months agoPredicate Windows CLI UTF-8 console I/O on a runtime capability check rather than...
larrybr [Mon, 30 Oct 2023 16:38:05 +0000 (16:38 +0000)] 
Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check.

FossilOrigin-Name: 0058ea6a69103c1442bf5090553ce9bf77e06011a4960df754eb96144ced497d

6 months agoPredicate Windows CLI UTF-8 console I/O on a runtime capability check rather than...
larrybr [Mon, 30 Oct 2023 13:56:50 +0000 (13:56 +0000)] 
Predicate Windows CLI UTF-8 console I/O on a runtime capability check rather than an OS version check.

FossilOrigin-Name: f89d062f8890fffc957a354e966784031d561d0f8f5c174c1ccdcf77e66c32bd

6 months agoWith SQLITE_ENABLE_BLOCK_ATOMIC_WRITE enabled, if a transaction is committing
drh [Mon, 30 Oct 2023 12:09:48 +0000 (12:09 +0000)] 
With SQLITE_ENABLE_BLOCK_ATOMIC_WRITE enabled, if a transaction is committing
and there is a new freelist page at the end of the database file which would
cause the database file size to grow, ensure that page is written and the
file size grows before the block-atomic-write commits.  Fix for the
problem identified by [forum:/forumpost/3bd8d497b2|forum post 3bd8d497b2]

FossilOrigin-Name: c9fdd6805df04f05ef347e5a43506fd37a729c5924abb6e1103e871c4ac2d6dc

6 months agoFor Windows CLI, institute a version check to determine default MBCS or UTF-8 transla...
larrybr [Sun, 29 Oct 2023 20:05:18 +0000 (20:05 +0000)] 
For Windows CLI, institute a version check to determine default MBCS or UTF-8 translation on console I/O. (Default to UTF-8 where known possible.)

FossilOrigin-Name: ddc6ead6453e0f98943bd07aedd90d47bc2e9e9e27b008d493491168bea2b3f1

6 months agoSimplify code slightly. Improve comments on added code and its use.
larrybr [Sun, 29 Oct 2023 19:55:22 +0000 (19:55 +0000)] 
Simplify code slightly. Improve comments on added code and its use.

FossilOrigin-Name: 046c84296627382ee416f64b02b77a937b368e30b32e6b800de5a854810766f6

6 months agoProperly close a handle. Use a putatively effective runtime test for UTF-8 console...
larrybr [Sun, 29 Oct 2023 16:26:12 +0000 (16:26 +0000)] 
Properly close a handle. Use a putatively effective runtime test for UTF-8 console I/O capability. (This makes the version test useful mainly for avoiding a warning that UTF-8 console I/O could not be setup.)

FossilOrigin-Name: dc91eb91725f3db65c73725f1fbcf18a711cafb65b4fea3277aa0905a24df353

6 months agoCondition default UTF-8 console I/O for Windows builds on OS version 10 or more....
larrybr [Sun, 29 Oct 2023 00:24:22 +0000 (00:24 +0000)] 
Condition default UTF-8 console I/O for Windows builds on OS version 10 or more. This is to accomodate an IsValidCodePage() API which may happily report CP_UTF8 as a valid code page when the stock console cannot, in fact, do UTF-8 I/O.

FossilOrigin-Name: 6b9b2a886fd4d239c2e87c3f3809c011f77c0f60e0c279bbe4e1d1b53c609e2d

6 months agoLimit the range of integer unix timestamps in date4.test, since some systems
drh [Sat, 28 Oct 2023 16:19:21 +0000 (16:19 +0000)] 
Limit the range of integer unix timestamps in date4.test, since some systems
(RaspberryPI) cannot deal with timestamp values that exceed pow(2,31).

FossilOrigin-Name: 765290663b28e90a0494997baf023f9610a4ed32f0ff0099bf9fc3d485733fca

6 months agoUpdate documentation for sqlite3_errmsg() to try to make it clear that if
drh [Sat, 28 Oct 2023 11:53:14 +0000 (11:53 +0000)] 
Update documentation for sqlite3_errmsg() to try to make it clear that if
the schema of a database contains table names or similar with invalid UTF,
then the error message generated by SQLite might also contain invalid UTF.
No changes to code.

FossilOrigin-Name: 33ba13c7c4b6f9c5e64ea30c819718f2caea214afca945c9ed7075864f4aaa40

6 months agoSince SQLite considers NaN to be like NULL and NULL sorts before any integer,
drh [Sat, 28 Oct 2023 11:40:33 +0000 (11:40 +0000)] 
Since SQLite considers NaN to be like NULL and NULL sorts before any integer,
make sure the sqlite3IntFloatCompare() routine reports that the integer
argument is larger if the floating-point argument is NaN.

FossilOrigin-Name: de1cf31a34b0f21288e7e30434a06baf25ee579929107c22e65c57236577fc4a

6 months agoRemove the SQLITE_MAX_ALLOCATION_SIZE flag (set to 536mb) from the WASM and JNI build...
stephan [Sat, 28 Oct 2023 03:54:28 +0000 (03:54 +0000)] 
Remove the SQLITE_MAX_ALLOCATION_SIZE flag (set to 536mb) from the WASM and JNI builds because it can unduly limit db exports via sqlite3_serialize(), as reported in [forum:75524f7342c1ba45|forum post 75524f7342c1ba45]. It now defaults to whatever sqlite3.c uses, which is currently just shy of 2gb.

FossilOrigin-Name: f6e1137919243c5ce86725df64b40b7e12e82cbceaff210ca41616d620f0dd1b

6 months agoFix cosmetic flaw in SQLITE_TXN_* doc. (no code change)
larrybr [Fri, 27 Oct 2023 21:44:53 +0000 (21:44 +0000)] 
Fix cosmetic flaw in SQLITE_TXN_* doc. (no code change)

FossilOrigin-Name: 72d7c18f80f41529811f74855ac198681a0cfe7634225233ec4b8df219c2e73b

6 months agoDisable two rtree test cases for Linux-i686. We do not have that platform
drh [Fri, 27 Oct 2023 18:16:15 +0000 (18:16 +0000)] 
Disable two rtree test cases for Linux-i686.  We do not have that platform
available for testing.  The test cases work on all other 64-bit and 32-bit
platforms that we have at hand.  So there is no way for us to debug this
problem.  Better to disable the test.
[forum:/forumpost/ffcbf789b5386573|forum post ffcbf789b5386573].

FossilOrigin-Name: fed4d6e90baecca716429f95e1fab7930297afa2a191a87a0a87cb93910d1bce

6 months agoAdd makefile targets for fuzzcheck-asan and fuzzcheck-ubsan.
drh [Fri, 27 Oct 2023 17:40:46 +0000 (17:40 +0000)] 
Add makefile targets for fuzzcheck-asan and fuzzcheck-ubsan.

FossilOrigin-Name: 27fc14303a0c6942e8cf5017d66c7ff5fcbc700a6109a93768263370f608397e

6 months agoFix to Makefile.in so that the "tool-zip" target can be run from outside the source...
dan [Fri, 27 Oct 2023 15:31:44 +0000 (15:31 +0000)] 
Fix to Makefile.in so that the "tool-zip" target can be run from outside the source tree.

FossilOrigin-Name: cd118da9db0680fab8761ff44384639b9d564b67a5dfb1280ab72e44ff57714d

6 months agoCleanup shell.c comments. Hide -utf8 option, as it is undocumented and accepted only...
larrybr [Fri, 27 Oct 2023 13:59:05 +0000 (13:59 +0000)] 
Cleanup shell.c comments. Hide -utf8 option, as it is undocumented and accepted only for backward compatibility. No functional changes except for -help content.

FossilOrigin-Name: 3a87995560b5acbebeb5af407aa9eddf4c37c6a27ec9429ece0ea931918f9d9c

6 months agoBack out [2904fcbeebba9189], mostly. The page bitmap is needed even for a
drh [Fri, 27 Oct 2023 10:49:17 +0000 (10:49 +0000)] 
Back out [2904fcbeebba9189], mostly.  The page bitmap is needed even for a
partial integrity_check in order to avoid an infinite loops while walking the
database.

FossilOrigin-Name: dd6e03b37356e2961abd97f636402c09744c98c3033f3435503958c6219f9121

6 months agoIn CLI for Windows builds, do MBCS/UTF-8 translation independently for input and...
larrybr [Thu, 26 Oct 2023 18:41:13 +0000 (18:41 +0000)] 
In CLI for Windows builds, do MBCS/UTF-8 translation independently for input and output. (And cure an MSVC warning.)

FossilOrigin-Name: 80f0b6f9c76c049edaaaeedc1745978b9d5b02a9c34bbf64209266a154b2b0e3

6 months agoHandle utf8 mode restore better for redirected input or output. Move utf8 mode setup...
larrybr [Thu, 26 Oct 2023 18:24:41 +0000 (18:24 +0000)] 
Handle utf8 mode restore better for redirected input or output. Move utf8 mode setup to before any invocation command processing. Sync w/trunk.

FossilOrigin-Name: 59452e7c72de02c2b6d40974c91173d87fd5f6f2e28c0b1f6f53eb1a09693fb6

6 months agoEnhance the "tool-zip" makefile target on Windows so that it uses more
drh [Thu, 26 Oct 2023 17:30:54 +0000 (17:30 +0000)] 
Enhance the "tool-zip" makefile target on Windows so that it uses more
universally available commands to build the ZIP archive.  Fix other minor
issues with that makefile target at the same time.

FossilOrigin-Name: d2f2f9126562c24966b0e9bc3629b85950c20199c41250478ba1da68eb7a0046

6 months agoFurther enhancements to make sure the correct returnning trigger is run when
drh [Thu, 26 Oct 2023 16:59:22 +0000 (16:59 +0000)] 
Further enhancements to make sure the correct returnning trigger is run when
there are nested INSERT RETURNING statements.

FossilOrigin-Name: d83405e870b071540b56e76291bdce1388db80b860afd68a34e4233f6ff2a3ab

6 months agoHandle the case where a virtual table xBestIndex method called while coding a trigger...
dan [Thu, 26 Oct 2023 16:05:57 +0000 (16:05 +0000)] 
Handle the case where a virtual table xBestIndex method called while coding a trigger fired by a top-level statement with a RETURNING clause prepares a statement that also contains a RETURNING clause.

FossilOrigin-Name: ec6bffa3b0fbf7cdee852cb0208de1f5869dafd88e2ee64c23cec89634219adc

6 months agoReady for merge, but could use testing on some dusty old Windows machines.
larrybr [Thu, 26 Oct 2023 15:12:41 +0000 (15:12 +0000)] 
Ready for merge, but could use testing on some dusty old Windows machines.

FossilOrigin-Name: 20220615621e01ff83fd26133840e2553a6087bcb56bbb8e9bf1408dd881cd9b

6 months agoDeal with the case of a reentrant INSERT on a virtual table where the
drh [Thu, 26 Oct 2023 12:59:41 +0000 (12:59 +0000)] 
Deal with the case of a reentrant INSERT on a virtual table where the
outer INSERT has a RETURNING clause but the inner does not.
dbsqlfuzz 3ac9a1e33f676254e02c0f297263b0a7aeb0c1a5.

FossilOrigin-Name: 8aba78e4dbf5c196aa50a28579f4bcd7c96103661c5968d62b2fded075bc73e4

6 months agoCure a harmless MSVC warning. (no other changes)
larrybr [Wed, 25 Oct 2023 20:44:01 +0000 (20:44 +0000)] 
Cure a harmless MSVC warning. (no other changes)

FossilOrigin-Name: 02234ef85ed9349ddf6225f67b7e941b0b68cbd2e58c9d7d84a8324393349853

6 months agoIn CLI for Windows builds, do MBCS/UTF-8 translation independently for input and...
larrybr [Wed, 25 Oct 2023 20:27:18 +0000 (20:27 +0000)] 
In CLI for Windows builds, do MBCS/UTF-8 translation independently for input and output. (WIP)

FossilOrigin-Name: 47b13e66e07be3a26cf7fa0b7b65ad8576c3b4be50fc422be8fe93be93d681ac

6 months agoUpdates to the mktoolzip.tcl to work on win32. win32-mktoolzip
dan [Wed, 25 Oct 2023 20:08:21 +0000 (20:08 +0000)] 
Updates to the mktoolzip.tcl to work on win32.

FossilOrigin-Name: 166b775bb523362ffe17722ce175278726303c319fbe7e4a1e9291736db38a5d

6 months agoFix harmless compiler warnings.
drh [Wed, 25 Oct 2023 19:06:23 +0000 (19:06 +0000)] 
Fix harmless compiler warnings.

FossilOrigin-Name: cc8efe0494b8fe0df18aa67b1675779bf704d1ac53647fe1f7f55d8048041680

6 months agoProvide dummy parameter names in the prototype for the new xIntegrity method
drh [Wed, 25 Oct 2023 18:53:00 +0000 (18:53 +0000)] 
Provide dummy parameter names in the prototype for the new xIntegrity method
of the sqlite3_module object.

FossilOrigin-Name: 131374d720a365cbbe3031a2bc0a34ba1c74e751e39c66e484dbce07ab49fb62

6 months agoFix minor problems with the "showwal" utility program. Add a missing header
drh [Wed, 25 Oct 2023 18:35:48 +0000 (18:35 +0000)] 
Fix minor problems with the "showwal" utility program.  Add a missing header
to the zipfile.c extension.

FossilOrigin-Name: 7b3f866e619c2b781b613493727cd111335ceec690d984408725c756feff26e6

6 months agoTest module altermalloc3.test requires DQS_DDL to be turned on.
drh [Wed, 25 Oct 2023 17:26:11 +0000 (17:26 +0000)] 
Test module altermalloc3.test requires DQS_DDL to be turned on.

FossilOrigin-Name: c4d02f4b0761a2836aa34f204e725f49478a19b02160e694e01042e6e7766167

6 months agoAdd an ALWAYS on branch that was made always-true by the DISTINCT ORDER BY
drh [Wed, 25 Oct 2023 15:30:11 +0000 (15:30 +0000)] 
Add an ALWAYS on branch that was made always-true by the DISTINCT ORDER BY
fix.

FossilOrigin-Name: c29ebcb0be8e969c359c077bd4ce752a9c952d2659062868f12efdd2cc77186d

6 months agoWhen doing a DISTINCT aggregate that contains an ORDER BY, only the
drh [Wed, 25 Oct 2023 14:54:16 +0000 (14:54 +0000)] 
When doing a DISTINCT aggregate that contains an ORDER BY, only the
arguments to the aggregate need to be distinct, not the ORDER BY terms.

FossilOrigin-Name: d2dbbdf7194bab4e5e3b74d3dbffb012a335829824c775c72dd7347c013d2125

6 months agoFix the amalgamation generator so that when it is reporting the Fossil
drh [Wed, 25 Oct 2023 12:58:06 +0000 (12:58 +0000)] 
Fix the amalgamation generator so that when it is reporting the Fossil
version number in the header comment of the amalgamation, it does not
elide the first hex digit of the version hash.

FossilOrigin-Name: cc66f526bd58c110cac027583f636099fa05b2b56d7ea9807b554cd950c1bf3c

6 months agoEnhance the new xIntegrity method of the sqlite3_module object with new
drh [Wed, 25 Oct 2023 10:37:11 +0000 (10:37 +0000)] 
Enhance the new xIntegrity method of the sqlite3_module object with new
parameters that provide the name of the table being checked and
a flag to indicate a "quick_check".  Based on feedback in
[forum:/forumpost/965c0d02ea|forum post 965c0d02ea].

FossilOrigin-Name: bc8afa3f15954bb35f65dbf940bf069de5e14d333036676c24430cf17b658d05

6 months agoImplement check-in [477577120b897bf1] differently, so as not to disrupt
drh [Tue, 24 Oct 2023 19:56:57 +0000 (19:56 +0000)] 
Implement check-in [477577120b897bf1] differently, so as not to disrupt
non-standard build configuration. See
[forum:/forumpost/c11523ca2df50293|forum post c11523ca2df50293].

FossilOrigin-Name: 50448fe4fdc8fd93303fe26bdcd885ecc606080c8e66e69d5be8dac28a77492b

6 months agoTest cases for COLLATE and NULLS FIRST/LAST in the ORDER BY for an
drh [Tue, 24 Oct 2023 17:45:11 +0000 (17:45 +0000)] 
Test cases for COLLATE and NULLS FIRST/LAST in the ORDER BY for an
aggregate function.

FossilOrigin-Name: 641f928feb8b6cfd64cb03992bc18c1653960b6eaeb35145d17df494727c7a11

6 months agoNew #ifdefs to fix certain compile-time options.
drh [Tue, 24 Oct 2023 16:16:27 +0000 (16:16 +0000)] 
New #ifdefs to fix certain compile-time options.

FossilOrigin-Name: 688c6279ef1d4ff8d58e83a1c73ca0221ab8570a7cd89459946a86afdad6ec1c

6 months agoFix a problem with the fts5 highlight() and snippet() functions when used with tokeni...
dan [Tue, 24 Oct 2023 16:06:56 +0000 (16:06 +0000)] 
Fix a problem with the fts5 highlight() and snippet() functions when used with tokenizers like "trigram" that output overlapping tokens. Forum post [forum:/forumpost/63735293ec|63735293ec].

FossilOrigin-Name: e952db86faaafd2ef8558175ebcae6834d0b0002813cc78c7ae7da713604cbec

6 months agoFix a problem with the fts5 highlight() and snippet() functions when used with tokeni... fts5-trigram-snippet-fix
dan [Tue, 24 Oct 2023 15:53:02 +0000 (15:53 +0000)] 
Fix a problem with the fts5 highlight() and snippet() functions when used with tokenizers like "trigram" that output overlapping tokens. Forum post [forum:/forumpost/63735293ec|63735293ec].

FossilOrigin-Name: d570aa02f79b1d7d3889e33f9eebab1b7edcf5231b1357451eed9a538607de54

6 months agoSpelling improvements, in comments only
larrybr [Tue, 24 Oct 2023 15:11:55 +0000 (15:11 +0000)] 
Spelling improvements, in comments only

FossilOrigin-Name: 9ee25eeaf17124dbe34b961384e74c1ae239ee1798bb01907938600ed6b4066f

6 months agoSpelling improvements, in comments only
larrybr [Tue, 24 Oct 2023 15:07:28 +0000 (15:07 +0000)] 
Spelling improvements, in comments only

FossilOrigin-Name: 65bcc583784476f8cc52dfe72ecc52df93d0ec5817c313ad7a83905c0047dd8c

6 months agoFix various harmless scan-build warnings.
drh [Tue, 24 Oct 2023 11:06:44 +0000 (11:06 +0000)] 
Fix various harmless scan-build warnings.

FossilOrigin-Name: 54be9af4469d7e31ee852f67e5aa32996557c10de654a60103fd165d2fedf311

6 months agoFix a harmless compiler warning in the expert extension.
drh [Tue, 24 Oct 2023 09:57:54 +0000 (09:57 +0000)] 
Fix a harmless compiler warning in the expert extension.

FossilOrigin-Name: 0c4907ddf9abd1ebfef31c1a53d702c4dcaa015c0032b8b52774c9e260b6cfd7

6 months agoFix a minor typo in the previous.
drh [Mon, 23 Oct 2023 23:34:53 +0000 (23:34 +0000)] 
Fix a minor typo in the previous.

FossilOrigin-Name: 9d388267e4e6724e2df333fe09d509e87defcfe984c5c2ebe031152d320812d0

6 months agoAdd notes on how to build a statically linked version of sqlite3_analyzer.exe.
drh [Mon, 23 Oct 2023 23:34:24 +0000 (23:34 +0000)] 
Add notes on how to build a statically linked version of sqlite3_analyzer.exe.

FossilOrigin-Name: 99ce9939c861ecc07877e640f75d395afb6502130bf4b5ccea8b98a80a1569ce

6 months agoAdd the sqlite3res file to the Windows build of sqldiff.exe so that the
drh [Mon, 23 Oct 2023 19:51:16 +0000 (19:51 +0000)] 
Add the sqlite3res file to the Windows build of sqldiff.exe so that the
resulting binary shows the SQLite icon.

FossilOrigin-Name: c696a4963bdd010c8161acbf7601078313e7da5ebb3f60381a489a70e5728dea

6 months agoAvoid attempting to delete a file while it is open in test script sessionalter.test.
dan [Mon, 23 Oct 2023 15:30:38 +0000 (15:30 +0000)] 
Avoid attempting to delete a file while it is open in test script sessionalter.test.

FossilOrigin-Name: f20b4a96f747adeb2ed486f06dd7d911f0f24b37df87dcd32d2c3e4b687da9a6

6 months agoRevert an earlier change that considered passing a NULL callback to sqlite3_preupdate...
dan [Mon, 23 Oct 2023 15:24:44 +0000 (15:24 +0000)] 
Revert an earlier change that considered passing a NULL callback to sqlite3_preupdate_hook() to be a misuse. This is required to clear the preupdate hook altogether.

FossilOrigin-Name: 1bf6f0f3bb54933e4e6c730554144934f73a7fac87c97a916b275afd7379f397

6 months agoNew test cases for PRAGMA integrity_check against FTS4 and FTS5 tables.
drh [Mon, 23 Oct 2023 15:23:10 +0000 (15:23 +0000)] 
New test cases for PRAGMA integrity_check against FTS4 and FTS5 tables.

FossilOrigin-Name: 3950d20c3a4433543546ce4495ae07aab3d6cefb163b1f30813a9776c5b962e8

6 months agoFix mutex1.test to take into account that the prng mutex is not (as of [c84e4483cb4...
dan [Mon, 23 Oct 2023 14:24:09 +0000 (14:24 +0000)] 
Fix mutex1.test to take into account that the prng mutex is not (as of [c84e4483cb4]) taken when writing a header to an in-memory journal.

FossilOrigin-Name: c9e37417fcc41f1e975290bf583113ff8f4144c056e8fcd9fafcb432c1a26b18

6 months agoImproved error messages for the xIntegrity method in FTS3/4 and FTS5.
drh [Mon, 23 Oct 2023 13:46:22 +0000 (13:46 +0000)] 
Improved error messages for the xIntegrity method in FTS3/4 and FTS5.

FossilOrigin-Name: df69abc0823f4dd9c051f8d5993d2f447ee0dadab5cef73d670107b1071db255

6 months agoFix sqlite3ExprDup() alignment assertions so that they work on 32-bit
drh [Mon, 23 Oct 2023 12:16:27 +0000 (12:16 +0000)] 
Fix sqlite3ExprDup() alignment assertions so that they work on 32-bit
platforms.

FossilOrigin-Name: 143f95efc7114455b1920f1d2f9a867392740f608d1dda4306005f01238103f8

6 months agoTemporarily disable the ext/expert/expert1-6.0 test, which does not work
drh [Mon, 23 Oct 2023 11:41:41 +0000 (11:41 +0000)] 
Temporarily disable the ext/expert/expert1-6.0 test, which does not work
on my configurations.

FossilOrigin-Name: a41b903d0fe489d20c4a7118a2c91f7c8a78568ce552225f64c2945bb811ea16

6 months agoAdd an SQLITE_OMIT_VIRTUALTABLE block around the new vtab code in "PRAGMA integrity_c...
dan [Mon, 23 Oct 2023 11:34:24 +0000 (11:34 +0000)] 
Add an SQLITE_OMIT_VIRTUALTABLE block around the new vtab code in "PRAGMA integrity_check".

FossilOrigin-Name: ab99eb2b6c50f4f0bb42918b9bdda37e2ef9316bed07de18fa4bd373c49a8b00

6 months agoAdd missing test file fts3fault3.test. Should have been part of [7f41d700].
dan [Mon, 23 Oct 2023 11:18:13 +0000 (11:18 +0000)] 
Add missing test file fts3fault3.test. Should have been part of [7f41d700].

FossilOrigin-Name: 92e64ab63a78445fe20863f9679c55a630a2295ff10c4ce33eab6dfaeef09622

6 months agoMerge fixes for expert handling of UDFs and other UD-whatevers.
larrybr [Mon, 23 Oct 2023 02:08:34 +0000 (02:08 +0000)] 
Merge fixes for expert handling of UDFs and other UD-whatevers.

FossilOrigin-Name: b5d7d07df58bb8e4013b4047e4019b96e506e8ef03ca0abfc9aae06a122b353a

6 months agoFix the shell1.test test so to align with the new behavior imposed by
drh [Mon, 23 Oct 2023 02:01:14 +0000 (02:01 +0000)] 
Fix the shell1.test test so to align with the new behavior imposed by
[bce807cd48763273] - that backslash escapes only work without quoted arguments
in dot-commands of the CLI.

FossilOrigin-Name: 0db82b4281a0e0d5e365553df11e0347f60c00c861c0fb96227059edff3a0ef6

6 months agoClear some picky warnings, sync w/trunk. expert-enhancement
larrybr [Mon, 23 Oct 2023 01:55:35 +0000 (01:55 +0000)] 
Clear some picky warnings, sync w/trunk.

FossilOrigin-Name: ee58425904b36319e016dc69bb5f141bb3565b1723a97490a4b2cfa16b89fbdf

6 months agoFix [f5c01676fd281e93] so that it always preserves 8-byte alignment for Expr
drh [Sun, 22 Oct 2023 23:44:32 +0000 (23:44 +0000)] 
Fix [f5c01676fd281e93] so that it always preserves 8-byte alignment for Expr
objects.  Add new assert() statement to verify this.

FossilOrigin-Name: 678a9728dc6b88d8ef924c86603056df18204bc9a9c4776b9baffd7c5b10c5f2

6 months agoDo not do backslash excape processing on any unquoted strings in dot-commands
drh [Sun, 22 Oct 2023 17:27:55 +0000 (17:27 +0000)] 
Do not do backslash excape processing on any unquoted strings in dot-commands
in the CLI - on Windows or on posix-like systems either one.  This brings the
processing into alignment with the documentation, allows backslash-delimited
filenames on Windows (as long as they are unquoted), and causes the CLI to work
the same with regard to backslash escapes on both Windows and posix.

FossilOrigin-Name: bce807cd4876327396b4ffcdf77f6931dd3bbd3314336eedf38bcf01d17af32c

6 months agoJNI: improve UB protections in sqlite3_bind_blob/text/text16().
stephan [Sun, 22 Oct 2023 12:33:05 +0000 (12:33 +0000)] 
JNI: improve UB protections in sqlite3_bind_blob/text/text16().

FossilOrigin-Name: 5c8383210a87d7f9d37a27053b5b1b6f41794fa8612826c68c1ca49c495cbd97

6 months agoAdd missing ScalarFunction.java to JNI build.
stephan [Sun, 22 Oct 2023 11:11:54 +0000 (11:11 +0000)] 
Add missing ScalarFunction.java to JNI build.

FossilOrigin-Name: b8258103fb433d9f5cfa15661b5edf4e60128fb4161d8a18e5cc3253e5aed72b

6 months agoIn the CLI, do not translate unquoted backslash escapes on dot-commands
drh [Sat, 21 Oct 2023 22:31:00 +0000 (22:31 +0000)] 
In the CLI, do not translate unquoted backslash escapes on dot-commands
as that can damage filename arguments.

FossilOrigin-Name: 4a0e2c6e17eefb296b7e91a13305b2260d6eb869a37bc5e5b79edaf3c19c810a

6 months agoRemove a branch that cannot affect the outcome from FkNoAction processing in
drh [Sat, 21 Oct 2023 20:34:57 +0000 (20:34 +0000)] 
Remove a branch that cannot affect the outcome from FkNoAction processing in
fkey.c.  Replace it with an assert().

FossilOrigin-Name: 023a9dbe83c0042e9d500e3ae6c0592a468982e4ac278d08c9201967506c7555

6 months agoReplace the patch at [5cb61c6788d7c017] with a better way to avoid failing
drh [Sat, 21 Oct 2023 20:03:44 +0000 (20:03 +0000)] 
Replace the patch at [5cb61c6788d7c017] with a better way to avoid failing
PRAGMA integrity_check if a module implementation is not loaded, as the use
of suppressErr can lead to problems.

FossilOrigin-Name: be5737ee4f4f1d5f8b3126f6eb70210bf3d8b1cdaef51aae818eaaba43ccf722

6 months agoFix a problem allowing a COMMIT following an OOM to cause fts3/4 corruption.
dan [Sat, 21 Oct 2023 18:12:07 +0000 (18:12 +0000)] 
Fix a problem allowing a COMMIT following an OOM to cause fts3/4 corruption.

FossilOrigin-Name: 7f41d7006db4225cf9b3d197d3a76842778669ac079e76361214a8023c9976e6

6 months agoAdd the SQLITE_TESTCTRL_FK_NO_ACTION test control. Make it available in the
drh [Sat, 21 Oct 2023 16:33:20 +0000 (16:33 +0000)] 
Add the SQLITE_TESTCTRL_FK_NO_ACTION test control.  Make it available in the
CLI.  Fix a minor problems with SQLITE_CHANGESETAPPLY_FKNOACTION in sessions.

FossilOrigin-Name: 91b64c6a70744704fc3285be7d8d46ba679ea5f0f69bd77b0e093eeb7447947d

6 months agoExtra comment on the implementation of SQLITE_TESTCTRL_FK_NO_ACTION, fknoaction
drh [Sat, 21 Oct 2023 16:25:44 +0000 (16:25 +0000)] 
Extra comment on the implementation of SQLITE_TESTCTRL_FK_NO_ACTION,
warning about the need to reset the schema in order for the setting change
to take full effect.

FossilOrigin-Name: a50a333ae11ba5d92f432108308ac0bec9afb00f466b78c8d3f3aa7e2851ef21

6 months agoAdd missing "finish_test" to sessionnoact.test.
dan [Sat, 21 Oct 2023 15:21:06 +0000 (15:21 +0000)] 
Add missing "finish_test" to sessionnoact.test.

FossilOrigin-Name: 9a1d37f5479adedb93f40e8189ad0efa891a438805d80774ee992d4dfd71150f

6 months agoFix a problem with SQLITE_CHANGESETAPPLY_FKNOACTION and the foreign-key-trigger-cache.
dan [Sat, 21 Oct 2023 15:04:24 +0000 (15:04 +0000)] 
Fix a problem with SQLITE_CHANGESETAPPLY_FKNOACTION and the foreign-key-trigger-cache.

FossilOrigin-Name: 95304ec6c9654b4366dc58ae263270cb42861cb5017174936f816922b5eb61e6

6 months agoAdd SQLITE_TESTCTRL_FK_NO_ACTION.
drh [Sat, 21 Oct 2023 12:54:37 +0000 (12:54 +0000)] 
Add SQLITE_TESTCTRL_FK_NO_ACTION.

FossilOrigin-Name: 563cf5f782cdddbbd7f727c65118edfd109aeb731c8aaf0d6ee5ee7030e61ea9

6 months agoAdjust an EXPLAIN QUERY PLAN output in scanstatus2.test to account for a
drh [Sat, 21 Oct 2023 11:43:54 +0000 (11:43 +0000)] 
Adjust an EXPLAIN QUERY PLAN output in scanstatus2.test to account for a
different loop order taken due to the removal of the view-scan optimization.

FossilOrigin-Name: 9deb8b6915e794bf9c5de88f2727ef9857351eaf905f8ab56754bc4d399c88b4

6 months agoCompress the content of the status line in testrunning.tcl so that all the
drh [Sat, 21 Oct 2023 11:34:59 +0000 (11:34 +0000)] 
Compress the content of the status line in testrunning.tcl so that all the
same status information appears but with less punctuation and with "zero"
values omitted, so that the status line will fit comfortably on an 80-column
terminal window.

FossilOrigin-Name: 966351311682a319ec796c07d407ce90cd1aa0cea9e904ba1085a4ebadbdf925

6 months agoCreate the new string_agg(X,Y) aggregate function which is an alias for
drh [Sat, 21 Oct 2023 11:13:47 +0000 (11:13 +0000)] 
Create the new string_agg(X,Y) aggregate function which is an alias for
the two-argument group_concat(X,Y) function, for compatibility with
SQL-Server and PostgreSQL.

FossilOrigin-Name: a3b3df8a9e43f1880a904b76027db56ed504a84622831c96ba1962a19bbed762

6 months agoAvoid an unnecessary malloc() for the page usage bitmap when running
drh [Sat, 21 Oct 2023 11:06:03 +0000 (11:06 +0000)] 
Avoid an unnecessary malloc() for the page usage bitmap when running
a partial integrity_check.

FossilOrigin-Name: 2904fcbeebba9189cebc48e58d12fc46f78ee23d8c4d46644606691f8cabb80c

6 months agoFix a test case broken by the previous check-in. string_agg
drh [Sat, 21 Oct 2023 11:00:57 +0000 (11:00 +0000)] 
Fix a test case broken by the previous check-in.

FossilOrigin-Name: 1e61864c3bffec133632f4575d59d11936e8bafc089c4d84a129dcaf7e9b6d7d

6 months agoAdd string_agg(X,Y) as an alias for group_concat(X,Y), for compatibility
drh [Fri, 20 Oct 2023 20:19:30 +0000 (20:19 +0000)] 
Add string_agg(X,Y) as an alias for group_concat(X,Y), for compatibility
with SQLServer and PG.

FossilOrigin-Name: b91c19bf2680f60d7826ab5d9e7902e2dc2a55d847bbea565a6489d47f2cc8f1

6 months agoFix a problem allowing a COMMIT following an OOM to cause fts5 corruption.
dan [Fri, 20 Oct 2023 19:59:12 +0000 (19:59 +0000)] 
Fix a problem allowing a COMMIT following an OOM to cause fts5 corruption.

FossilOrigin-Name: fba3129d1362dd3ee04d61cb3d3c48518cd98dde3febc85298f411776d60073e

6 months agoFix PRAGMA integrity_check so that it does not raise an error if the
drh [Fri, 20 Oct 2023 19:06:04 +0000 (19:06 +0000)] 
Fix PRAGMA integrity_check so that it does not raise an error if the
schema contains a CREATE VIRTUAL TABLE that does not have its module
loaded.

FossilOrigin-Name: 5cb61c6788d7c0170b587e4667ee57d588c991a9901951762e33b97c6a135a82

6 months agoOmit some redundant calls to strlen() used to find the size of
drh [Fri, 20 Oct 2023 18:09:08 +0000 (18:09 +0000)] 
Omit some redundant calls to strlen() used to find the size of
Expr.u.zToken in sqliteExprDup().  This inefficiency was seen while working
on the previous check-in, and I thought it best to fix it while it was
fresh in mind.

FossilOrigin-Name: b7a84eff5dcdf5b2ff81331097cdc64d0c5d16a4ae224320f39b64541ec72dc7

6 months agoImprovements to the sqlite3ExprDup() logic for faster performance and better
drh [Fri, 20 Oct 2023 17:15:15 +0000 (17:15 +0000)] 
Improvements to the sqlite3ExprDup() logic for faster performance and better
run-time error detection.  This check-in fixes the 5x oversize memory allocation
bug from [f371e4c0f8ea73ae] as well as all other known issues that result from
handing the ORDER BY clause of an aggregate function off of the pLeft pointer
of the Expr object.

FossilOrigin-Name: f5c01676fd281e938181b846dd2024d050f597dc6a7a91928beab9d8553dfdb5

6 months agoAdd the SQLITE_CHANGESETAPPLY_FKNOACTION flag to sqlite3session.h, for passing to...
dan [Fri, 20 Oct 2023 17:06:39 +0000 (17:06 +0000)] 
Add the SQLITE_CHANGESETAPPLY_FKNOACTION flag to sqlite3session.h, for passing to sqlite3changeset_apply_v2() to cause all foreign key constraints to behave as if they were declared NO ACTION.

FossilOrigin-Name: fc9f82ea084159eaf3dd1757b96d17d1201b00c4e06455a7dcd8067172b25f28

6 months agoSimplifications and optimizations to the Expr object duplication logic.
drh [Fri, 20 Oct 2023 15:47:30 +0000 (15:47 +0000)] 
Simplifications and optimizations to the Expr object duplication logic.
The 5x multiplier crutch from [f371e4c0f8ea73ae] is still present.  More
fixes are still needed.

FossilOrigin-Name: 56142a78163b755f16afc05201f623a7a19d9a4b0620a67f7fa20d2a965a288d

6 months agoOmit an unused constant from sessionfuzz.c to prevent a compiler warning.
drh [Fri, 20 Oct 2023 14:05:26 +0000 (14:05 +0000)] 
Omit an unused constant from sessionfuzz.c to prevent a compiler warning.

FossilOrigin-Name: a0cf7e24f928183866ac54f0d6cd83c859d487a19dc87572ab0188d90d2ff87d

6 months agoCorrect the opfs-sahpool VFS's xGetLastError() method to return the previous error...
stephan [Fri, 20 Oct 2023 12:23:49 +0000 (12:23 +0000)] 
Correct the opfs-sahpool VFS's xGetLastError() method to return the previous error code, not 0, on success.

FossilOrigin-Name: 95a1dde63117d696323c775580b9c04f044a5b8d609e9174b739ac03ecc1336c