]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
22 months agoMerge version 3.43.1 into the reuse-schema-3.43 subbranch.
drh [Mon, 11 Sep 2023 13:06:54 +0000 (13:06 +0000)] 
Merge version 3.43.1 into the reuse-schema-3.43 subbranch.

FossilOrigin-Name: d96586b51b591608f3dbae9a1dd201ce10f1f700b77d913487e6c269af42100d

22 months agoVersion 3.43.1 version-3.43.1
drh [Mon, 11 Sep 2023 12:01:27 +0000 (12:01 +0000)] 
Version 3.43.1

FossilOrigin-Name: 2d3a40c05c49e1a49264912b1a05bc2143ac0e7c3df588276ce80a4cbc9bd1b0

22 months agoMerge candidate patches for version 3.43.1 into the reuse-schema-3.43 branch.
drh [Fri, 8 Sep 2023 20:24:30 +0000 (20:24 +0000)] 
Merge candidate patches for version 3.43.1 into the reuse-schema-3.43 branch.

FossilOrigin-Name: c94be4600d6772876a15b53874142c88793b3731fd92d5d427ea931c0cfcf70c

22 months agoFix a problem with fts5 secure-delete mode causing fts5 to corrupt its records.
drh [Fri, 8 Sep 2023 19:35:02 +0000 (19:35 +0000)] 
Fix a problem with fts5 secure-delete mode causing fts5 to corrupt its records.

FossilOrigin-Name: fb24ca17fa1be739395fc471a8d4c9f876874c1709d41803925027b56587cf83

22 months agoFix a bad assert() in FTS3.
drh [Thu, 7 Sep 2023 14:10:33 +0000 (14:10 +0000)] 
Fix a bad assert() in FTS3.

FossilOrigin-Name: 61d2074c695b011c51ea0e0e22051889e843e67dbc4b91c71f5b1b9177d0b9c8

22 months agoFix a buffer overread in the sessions extension that could occur when processing...
drh [Thu, 7 Sep 2023 14:04:01 +0000 (14:04 +0000)] 
Fix a buffer overread in the sessions extension that could occur when processing a corrupt changeset.

FossilOrigin-Name: 6009c871a48555efd2451b8b44d441548b9bdbc71141a52b81c1f4c7d99d3790

22 months agoVersion number to 3.43.1.
drh [Thu, 7 Sep 2023 11:48:29 +0000 (11:48 +0000)] 
Version number to 3.43.1.

FossilOrigin-Name: fdfe4d60b3226516d497a57a3fb1c5ce52b8da368e7b9b9a301df7c6e0c9ebfd

22 months agoIn the OPFS VFS' importDb() methods, overwrite the header bytes 18 and 19 with 1...
stephan [Fri, 1 Sep 2023 11:30:55 +0000 (11:30 +0000)] 
In the OPFS VFS' importDb() methods, overwrite the header bytes 18 and 19 with 1 instead of 0. Correct a potentially leaked/unclosed SharedAccessHandle when importDb() throws.

FossilOrigin-Name: 6795a6107bc8e6965c078fb4ddecbaae1f6a8e273effe4c8c0555358f0fbf32b

23 months agoDo not disable unused columns in a UNION ALL sub-query if any component of the sub...
drh [Thu, 31 Aug 2023 18:26:55 +0000 (18:26 +0000)] 
Do not disable unused columns in a UNION ALL sub-query if any component of the sub-query is DISTINCT.

FossilOrigin-Name: 0d50d27197f3566f65c2c37f175765a6c6e534d20c34994115a04a040fc3e446

23 months agoFix a bug in json_array_length() introduced in version 3.43.0
drh [Wed, 30 Aug 2023 18:27:46 +0000 (18:27 +0000)] 
Fix a bug in json_array_length() introduced in version 3.43.0
If the JSON input comes from json_remove(),
the removed array entries are still counted as part of the array length.

FossilOrigin-Name: db7cb6cb73e606667f0ac52a2e84be6e755ae2792fc64e494ed08d0d3fab2863

23 months agoFix the AVG() and TOTAL() functions so that they work with infinitites.
drh [Wed, 30 Aug 2023 16:08:30 +0000 (16:08 +0000)] 
Fix the AVG() and TOTAL() functions so that they work with infinitites.

FossilOrigin-Name: 97e20716c7c5c9c96a693835f99692d4cea088edebb9e422057bcb59829b798f

23 months agoFix an issue with infinity handling by the SUM() function that goes back
drh [Mon, 28 Aug 2023 12:57:30 +0000 (12:57 +0000)] 
Fix an issue with infinity handling by the SUM() function that goes back
to the extended-precision SUM() enhancement of
check-in c63e26e705f5e967.  Problem reported by
forum post 1c06ddcacc86032a.

FossilOrigin-Name: 692266abd107920ef8bec16c5e2c6226746948140dd8da17cdf2132fee4338f6

23 months agoResolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built...
stephan [Mon, 28 Aug 2023 05:06:08 +0000 (05:06 +0000)] 
Resolve a makefile bug which causes sqlite3-worker1-bundler-friendly.mjs to be built incorrectly. Reported in [forum:a874e435cf4690c1|forum post a874e435cf4690c1].

FossilOrigin-Name: 289d2a0e64d760aded18cd457fe06a55f3fa0bfd56914e7b41297e437861b4d9

23 months agoVersion-3.43.0 for the reuse-schema branch.
drh [Thu, 24 Aug 2023 13:32:09 +0000 (13:32 +0000)] 
Version-3.43.0 for the reuse-schema branch.

FossilOrigin-Name: 6f1bcd6a1a4165bcf44d1a213aee8cf8005b8469fed69818ebdec8f1325950f5

23 months agoVersion 3.43.0 version-3.43.0
drh [Thu, 24 Aug 2023 12:36:59 +0000 (12:36 +0000)] 
Version 3.43.0

FossilOrigin-Name: 0f80b798b3f4b81a7bb4233c58294edd0f1156f36b6ecf5ab8e83631d468778c

23 months agoChange a variable name in fts5FlushOneHash() to avoid shadowing another.
dan [Thu, 24 Aug 2023 12:01:30 +0000 (12:01 +0000)] 
Change a variable name in fts5FlushOneHash() to avoid shadowing another.

FossilOrigin-Name: 3f5bec9a684f6b3d88383617831862fc5595a51ad99ec12430ac6650b704ccbb

23 months agoFix typo in the Lemon documentation.
drh [Wed, 23 Aug 2023 18:42:04 +0000 (18:42 +0000)] 
Fix typo in the Lemon documentation.

FossilOrigin-Name: 5daeb318c0472e8c004109caacd8bc977145a2c1bfa6f5bdcf87ab89ea51c30b

23 months agoMore changes to documents for GitHub-style markdown.
drh [Wed, 23 Aug 2023 18:29:41 +0000 (18:29 +0000)] 
More changes to documents for GitHub-style markdown.

FossilOrigin-Name: f20f84ef717cea11f92d6a1ab3b4e0fec5752b7ec98ad5b59e06745e7e25b6ee

23 months agoFix the Markdown in the compile-for-windows.md document so that it works
drh [Wed, 23 Aug 2023 18:26:00 +0000 (18:26 +0000)] 
Fix the Markdown in the compile-for-windows.md document so that it works
on GitHub.  Improved header text in README.md.

FossilOrigin-Name: a25360c020275064711d0aa3eb3cec3d764b5266b86f9728243e501d082306ec

23 months agoMinor adjustments to the wording about pull requests in the README.md file.
drh [Wed, 23 Aug 2023 12:53:35 +0000 (12:53 +0000)] 
Minor adjustments to the wording about pull requests in the README.md file.

FossilOrigin-Name: 6b2d68afd8ecdfe8eb04e3f6c13bea4ba42f7c2f16e6fc4263ffefa29c55c527

23 months agoThe pageOnDirtyList() assertion is too slow even for debugging builds, for
drh [Wed, 23 Aug 2023 10:20:39 +0000 (10:20 +0000)] 
The pageOnDirtyList() assertion is too slow even for debugging builds, for
some corner cases.  It makes the query appear to hang.  So make it an
EXPENSIVE_ASSERT instead.

FossilOrigin-Name: bb9dcdaf3244c4fc6872850a82b80c469203911e2f6e3a3211e508be39b59fa3

23 months agoFix a harmless memory leak in the sqldiff utility.
drh [Tue, 22 Aug 2023 16:44:33 +0000 (16:44 +0000)] 
Fix a harmless memory leak in the sqldiff utility.

FossilOrigin-Name: 724bc15701f3f647c741b614d4ac4fd98e1cdfe49a85f48c64fb1df5b83811b0

23 months agoMerge the trunk Makefile enhancements into the reuse-schema branch - especially
drh [Tue, 22 Aug 2023 15:47:48 +0000 (15:47 +0000)] 
Merge the trunk Makefile enhancements into the reuse-schema branch - especially
the new "sdevtset" makefile target.

FossilOrigin-Name: f55f5e9dff16147bc973c31307826eb3692747827d582d05750d2b94b5754c7e

23 months agoAdd makefile target "sdevtest" - like "mdevtest" except asan and usan enabled for...
dan [Tue, 22 Aug 2023 15:19:50 +0000 (15:19 +0000)] 
Add makefile target "sdevtest" - like "mdevtest" except asan and usan enabled for the non-debug test.

FossilOrigin-Name: a449d650cd3dcd1baaeb3a3de2aaaac45594397e04f95fe637b0fe4ddb273404

23 months agoUpdate version number in autoconf/tea/configure.ac.
dan [Tue, 22 Aug 2023 13:41:18 +0000 (13:41 +0000)] 
Update version number in autoconf/tea/configure.ac.

FossilOrigin-Name: 055ae724ff34bd41a1d97180b90fce081861856ac67572a633d31f518c20aa1e

23 months agoUpdate autoconf/Makefile.msc (by running mkmsvcmin.tcl) to support the "ASAN=1" option.
dan [Tue, 22 Aug 2023 11:20:38 +0000 (11:20 +0000)] 
Update autoconf/Makefile.msc (by running mkmsvcmin.tcl) to support the "ASAN=1" option.

FossilOrigin-Name: 17028ba7a9bb1c5e26cb8c0d051d709df95d9f779fd3b1ec42adc924246f8f19

23 months agoMerge the latest trunk enhancements into the reuse-schema branch.
drh [Mon, 21 Aug 2023 17:53:26 +0000 (17:53 +0000)] 
Merge the latest trunk enhancements into the reuse-schema branch.

FossilOrigin-Name: e94f09f18856881bb6bf135405036b3965abb336a3d4c66615cb698bcd516910

23 months agoFix an undefined integer overflow in fts5.
dan [Mon, 21 Aug 2023 16:14:58 +0000 (16:14 +0000)] 
Fix an undefined integer overflow in fts5.

FossilOrigin-Name: f5c50349b1e4da233b554f371be49297b8b40ca5fe0188899ed906f682bf70d6

23 months agoifdef adjustments so that SQLITE_OMIT_WAL works with SQLITE_USE_SEH.
drh [Mon, 21 Aug 2023 15:29:21 +0000 (15:29 +0000)] 
ifdef adjustments so that SQLITE_OMIT_WAL works with SQLITE_USE_SEH.

FossilOrigin-Name: 0462a2612d1fc1d077acf60ef415f358aa2c44174c4ef28f4bbfdbcbf03d3b7c

23 months agoFix another UBSAN inaccuracy in fuzzcheck.
drh [Mon, 21 Aug 2023 14:40:19 +0000 (14:40 +0000)] 
Fix another UBSAN inaccuracy in fuzzcheck.

FossilOrigin-Name: a6fb9de8f87261194e6034376f62b1cac30b764f106dd3adcf728e020f8a4fd5

23 months agoAddress minor inaccuracies in fuzzcheck and RTREE found by UBSAN.
drh [Mon, 21 Aug 2023 14:28:47 +0000 (14:28 +0000)] 
Address minor inaccuracies in fuzzcheck and RTREE found by UBSAN.

FossilOrigin-Name: a64e6c2fd8ef1d2d7f14aa9265629853298bbc480c2683c79dfd24847a61b68b

23 months agoshell.c.in help text typo fix. No functional changes.
stephan [Sat, 19 Aug 2023 08:12:10 +0000 (08:12 +0000)] 
shell.c.in help text typo fix. No functional changes.

FossilOrigin-Name: c319033276c3565d0f1f2cae1c91791940d322fe79696bc26d74fddeb2664373

23 months agoRename the decimal_sci() function to decimal_exp().
drh [Fri, 18 Aug 2023 15:39:38 +0000 (15:39 +0000)] 
Rename the decimal_sci() function to decimal_exp().
[forum:/forumpost/fa027bb0ab|Forum post fa027bb0ab].

FossilOrigin-Name: c48f1be8cc505a7e2902c79e26c1d9a121ff5c55785ac812d2e09232b2414695

23 months agoAvoid running test case sort2.2.3 under address-sanitizer. It runs out of memory...
dan [Fri, 18 Aug 2023 15:17:52 +0000 (15:17 +0000)] 
Avoid running test case sort2.2.3 under address-sanitizer. It runs out of memory on some 32-bit platforms.

FossilOrigin-Name: 925be7539947078547ee129b3d328ab0c59b19c6e2e5a391840f2d58f6d59acd

23 months agoEnhance the CLI and the fuzzcheck utility programs to report whether they
drh [Fri, 18 Aug 2023 12:15:44 +0000 (12:15 +0000)] 
Enhance the CLI and the fuzzcheck utility programs to report whether they
are compiled as 32-bit or 64-bit for things like the --version option.

FossilOrigin-Name: ec7eeb055bfb0e5a4467d8a45fa53d84bb8ae80ca0474b687e2783e971648008

23 months agoEnhance the notes on compiling for Windows11 to explain how to do
drh [Fri, 18 Aug 2023 11:36:33 +0000 (11:36 +0000)] 
Enhance the notes on compiling for Windows11 to explain how to do
32-bit builds on a 64-bit system.

FossilOrigin-Name: dd749e4042bdffb20fe71dd2dba91eab5edc32e4b2773c2fadba43cb54027a17

23 months agoDo not allow bound parameters in the ON CONFLICT clause of an UPSERT.
drh [Thu, 17 Aug 2023 17:48:20 +0000 (17:48 +0000)] 
Do not allow bound parameters in the ON CONFLICT clause of an UPSERT.
dbsqlfuzz 9983e2c77634a8ccf33b5c91fa9982599de5f9e9

FossilOrigin-Name: 3c06709335eb4b98e3a684e3ebbae69eeb6a21b452bce29159c82bb632d6a042

23 months agoFix an error in documentation comments in fts5.h.
dan [Thu, 17 Aug 2023 16:59:35 +0000 (16:59 +0000)] 
Fix an error in documentation comments in fts5.h.

FossilOrigin-Name: 24d96bd65d8ccdd50a6f4fe217d196728a2f8658d128f9352c287f64e034104a

23 months agoAdd extra test to fts5synonym2.test.
dan [Thu, 17 Aug 2023 16:49:06 +0000 (16:49 +0000)] 
Add extra test to fts5synonym2.test.

FossilOrigin-Name: 39ea11be3b35c5ecde9bc0fe66af673b8f440dc523422887d05a29feef036b01

23 months agoAdd "Windows-Sanitize" configuration to "testrunner.tcl release" tests on windows.
dan [Thu, 17 Aug 2023 16:06:17 +0000 (16:06 +0000)] 
Add "Windows-Sanitize" configuration to "testrunner.tcl release" tests on windows.

FossilOrigin-Name: e68b46dc6aff48c81a2a5e7662d0f694615b64aa50bcfee9a0b8b25fa4e5f33d

23 months agoHave all test names in json101.test start with "json101".
dan [Thu, 17 Aug 2023 15:14:43 +0000 (15:14 +0000)] 
Have all test names in json101.test start with "json101".

FossilOrigin-Name: af56d7b6b9c50f2541a51fcb7d94b89aafba4f343a9103b21a15aad3f283c63e

23 months agoEnable address sanitizer in Makefile.msc by adding the ASAN=1 argument on
drh [Thu, 17 Aug 2023 15:11:59 +0000 (15:11 +0000)] 
Enable address sanitizer in Makefile.msc by adding the ASAN=1 argument on
the nmake command line.

FossilOrigin-Name: 3eaadaff85111103c9441a9d6cd31291b95db9f3a6ec7003e0ff4ce5db7490da

23 months agoFix a possible UAF in SEH if an exception occurs at an inopportune moment
drh [Thu, 17 Aug 2023 14:19:44 +0000 (14:19 +0000)] 
Fix a possible UAF in SEH if an exception occurs at an inopportune moment
during WAL processing.

FossilOrigin-Name: 91b91037e348fa10cf6a9d8a0ffbfdebb4a40e0e336b65b112ed1c828e75cda7

23 months agoRefinements to instructions on compiling for Windows.
drh [Wed, 16 Aug 2023 17:23:42 +0000 (17:23 +0000)] 
Refinements to instructions on compiling for Windows.

FossilOrigin-Name: d543c36c35f71c5f0a7ebf6f496feca40d16566d0c5b2c2ba205ff43437ffcd1

23 months agoImproved instructions on how to build SQLite on Windows 11 and similar.
drh [Wed, 16 Aug 2023 17:12:26 +0000 (17:12 +0000)] 
Improved instructions on how to build SQLite on Windows 11 and similar.

FossilOrigin-Name: 0f6b2b33736ee07f17f3a4e5f077bb4d0e2481c8f81251b8ce6b78510f372237

23 months agoMake sqlite3_stmt_explain() accessible to loadable extensions.
drh [Wed, 16 Aug 2023 15:27:49 +0000 (15:27 +0000)] 
Make sqlite3_stmt_explain() accessible to loadable extensions.

FossilOrigin-Name: a237a31ff4a7cd3dc744af1e1ebb9466e42eebafa31c1b5c0027cbaee9babc9b

23 months agoMix the current process ID into the randomness used for generating
drh [Wed, 16 Aug 2023 15:10:07 +0000 (15:10 +0000)] 
Mix the current process ID into the randomness used for generating
temporary filenames on Windows.

FossilOrigin-Name: 775a36ee093df4b5f7529a43eeaee9d5a9a943ad5ed8ae03bc74e459e87ba438

23 months agoUpdate testrunner.tcl to use environment variable %NUMBER_OF_PROCESSES% when running...
dan [Wed, 16 Aug 2023 14:18:53 +0000 (14:18 +0000)] 
Update testrunner.tcl to use environment variable %NUMBER_OF_PROCESSES% when running under tclsh on windows. Also modify the internal database schema used by testrunner.tcl to be compatible with old versions of SQLite.

FossilOrigin-Name: 6542ed3b9e028c44aca504eadca843ee9b2ba08f5f650523238dd1253f7e221b

23 months agoFix test script problem preventing veryquick.test from running.
dan [Wed, 16 Aug 2023 13:55:38 +0000 (13:55 +0000)] 
Fix test script problem preventing veryquick.test from running.

FossilOrigin-Name: e73886574042108eb31641d0820c273c10b83fbf08ac6cb52d3e4c27830e2c23

23 months agoCherrypick [00ac653562a6] to remove stray JNI debug output. No functional changes.
stephan [Tue, 15 Aug 2023 21:44:22 +0000 (21:44 +0000)] 
Cherrypick [00ac653562a6] to remove stray JNI debug output. No functional changes.

FossilOrigin-Name: e12d70f38c0ed5c0abf9a1e30ce4db59a4426e1e8cb1f8f07834fc1bedfcc65a

23 months agoCherrypick [653ed92dc391] (went to wrong branch). Doc change only, no code changes.
stephan [Tue, 15 Aug 2023 20:57:42 +0000 (20:57 +0000)] 
Cherrypick [653ed92dc391] (went to wrong branch). Doc change only, no code changes.

FossilOrigin-Name: 79a14457f0067814e7c33de709e2f9e19ab880d3eebbcb6f9fcce52a4720ecac

23 months agoUpdate testrunner.tcl to make it easier to add things like mdevtest.
dan [Tue, 15 Aug 2023 18:52:25 +0000 (18:52 +0000)] 
Update testrunner.tcl to make it easier to add things like mdevtest.

FossilOrigin-Name: a531b71c4fd64fff6008876af825107ebc403f80dcb95273a05936ff6587b7aa

23 months agoImprove the portability of the src-verify.c tool on Windows.
drh [Tue, 15 Aug 2023 18:08:14 +0000 (18:08 +0000)] 
Improve the portability of the src-verify.c tool on Windows.

FossilOrigin-Name: 4068d94acd042a0a9887fba8ba38fa94c6f41a6d3c7a61d5514a57f613b3d278

23 months agoFix problems in fts5 test code.
dan [Tue, 15 Aug 2023 14:53:49 +0000 (14:53 +0000)] 
Fix problems in fts5 test code.

FossilOrigin-Name: c16ed3b1cc7b4c21bfa96062bf9028ae071c89e63df3b444b59f1753594e4e94

23 months agoUse a dodgy substitute if the INFINITY macro is not available. See
drh [Tue, 15 Aug 2023 12:27:27 +0000 (12:27 +0000)] 
Use a dodgy substitute if the INFINITY macro is not available. See
[forum:/forumpost/8e66e19bb9|forumpost 8e66e19bb9].

FossilOrigin-Name: 4ae72c896761df5cd37c98ca3eeee7d4c6af3e4ccf74edd88ff902ef38f0765b

23 months agoFix the PRAGMA case_sensitive_like command so that the LIKE function continues
drh [Tue, 15 Aug 2023 11:58:22 +0000 (11:58 +0000)] 
Fix the PRAGMA case_sensitive_like command so that the LIKE function continues
to be innocuous after the PRAGMA.
[forum:/forumpost/925dc9f67804c540|Forum post 925dc9f67804c540].

FossilOrigin-Name: 84c268c34cba7207a90dad2a8e972ce90c85304e91f4933c76963822ad1ae48b

23 months agoFix an off-by-one error causing a buffer overread in test2.c.
dan [Tue, 15 Aug 2023 10:57:08 +0000 (10:57 +0000)] 
Fix an off-by-one error causing a buffer overread in test2.c.

FossilOrigin-Name: e1edf95ecc8f6840fd62abe83121fddeab7413c316b2e20b60fd3b2c8fdd4dca

23 months agoFix the autoconf makefile for the CLI such that it disables double-quoted
drh [Mon, 14 Aug 2023 19:10:48 +0000 (19:10 +0000)] 
Fix the autoconf makefile for the CLI such that it disables double-quoted
strings by default, as all other builds of the CLI do.
[forum:/forumpost/9794b6aaa5|forum post 9794b6aaa5].

FossilOrigin-Name: 85fd4f0ef41a883448f16d55b7f8bd5c7b1d9c89a3d7d9bcae9c2744ed843099

23 months agoFix a problem in sqlite3_snapshot_recover() introduced by the [8a6b0c24937e855b]...
dan [Mon, 14 Aug 2023 18:21:56 +0000 (18:21 +0000)] 
Fix a problem in sqlite3_snapshot_recover() introduced by the [8a6b0c24937e855b] merge.

FossilOrigin-Name: c2577eb0a4a627c65d675f1446514843486092be9cb271b682793a0107e496cd

23 months agoChange the name of the ".binary" command in the CLI to ".crnl". The sense of
drh [Mon, 14 Aug 2023 13:33:19 +0000 (13:33 +0000)] 
Change the name of the ".binary" command in the CLI to ".crnl".  The sense of
the setting is inverted.  The original ".binary" still works for backwards
compatibility but is now undocumented.  ".crnl" is also undocumented on machines
where it is a no-op (all machines other than Windows).
[forum:/forumpost/8bd0b0fbdbc12477|forum thread 8bd0b0fbdbc12477]

FossilOrigin-Name: 544de2da09cd7b9bbb6cb4c52bb22325ace3391fca00c6a43847bfc158032b66

23 months agoFix harmless compiler warnings reported by MSVC.
drh [Mon, 14 Aug 2023 12:20:44 +0000 (12:20 +0000)] 
Fix harmless compiler warnings reported by MSVC.

FossilOrigin-Name: 391e21bb6e0b2f4632972b6617a3a18192f88deb29eee5bc060846468e624b21

23 months agoEnable SEH be default in Windows builds.
drh [Mon, 14 Aug 2023 12:05:38 +0000 (12:05 +0000)] 
Enable SEH be default in Windows builds.

FossilOrigin-Name: faae792fd5db7afeb7e4345d96f14c8986ea9a3cd4764ddee71314bfca36ac71

23 months agoRemove SQLITE_DEBUG from JNI build.
stephan [Sun, 13 Aug 2023 10:22:15 +0000 (10:22 +0000)] 
Remove SQLITE_DEBUG from JNI build.

FossilOrigin-Name: 82f004cf7408c503c5787b46c7b13ceb0a20a3ad1d4f69d56127772c40e214a1

23 months agoMerge the Java Native Interface (JNI) binding into trunk.
stephan [Sat, 12 Aug 2023 21:39:18 +0000 (21:39 +0000)] 
Merge the Java Native Interface (JNI) binding into trunk.

FossilOrigin-Name: 48b13edcec6935bf125b265b41a3e6f7b2407afff89d5b4daa2939e3c5679ca0

23 months agoUpdate wasm's push-testing rule to exclude files which were recently removed from...
stephan [Sat, 12 Aug 2023 21:08:41 +0000 (21:08 +0000)] 
Update wasm's push-testing rule to exclude files which were recently removed from the build.

FossilOrigin-Name: 0a6930a7ff8f8c6ca244d1d654532f3d2a02d77ef67c6cae0c53092743d59ea6

23 months agoCorrect JNI .jar rules to only include *.java/class files, not *.* (*~ files). jni
stephan [Sat, 12 Aug 2023 20:50:29 +0000 (20:50 +0000)] 
Correct JNI .jar rules to only include *.java/class files, not *.* (*~ files).

FossilOrigin-Name: 1ba7754045a009d9c94b23ac76b9bb8d9c9cb24d42dcdf1203ee75ac85765d3e

23 months agoFix the mdevtest target so that it works with msvc.
dan [Sat, 12 Aug 2023 19:58:47 +0000 (19:58 +0000)] 
Fix the mdevtest target so that it works with msvc.

FossilOrigin-Name: 01f49448cd0cfe3af499aedfe887b7b0be4f1ab09cd5a16119ddafb32b107708

23 months agoFix testrunner.tcl so that it restarts itself using [testfixture] if its current...
dan [Sat, 12 Aug 2023 19:25:26 +0000 (19:25 +0000)] 
Fix testrunner.tcl so that it restarts itself using [testfixture] if its current interpreter does not support [package require sqlite3].

FossilOrigin-Name: 408be98dddf500f2d6c9049703997836d80d156d86cf297f664175a107f7331e

23 months agoHave the mdevtest target support the OPTS variable on unix.
dan [Sat, 12 Aug 2023 18:23:38 +0000 (18:23 +0000)] 
Have the mdevtest target support the OPTS variable on unix.

FossilOrigin-Name: 940f58d9b944d3344b40a4bc020842d9b6703685c9c51f4010e265afd98608ff

23 months agoAdd "mdevtest" target to makefiles. Equivalent to running "devtest" on both debug...
dan [Sat, 12 Aug 2023 17:36:57 +0000 (17:36 +0000)] 
Add "mdevtest" target to makefiles. Equivalent to running "devtest" on both debug and non-debug builds.

FossilOrigin-Name: af354fbc0be06d5792a1e712ec4e9cec4c6cb4521335aa31f8f51ca5c94499ae

23 months agoMore JNI docs.
stephan [Sat, 12 Aug 2023 15:37:53 +0000 (15:37 +0000)] 
More JNI docs.

FossilOrigin-Name: 290028d3ca5638f3bb18a0b243c7ba3c31c8a2b1a837c36ec29e0fc4ed6533f0

23 months agoFurther simplifications in the interface of the OutputPointer family of Java classes.
stephan [Sat, 12 Aug 2023 15:09:09 +0000 (15:09 +0000)] 
Further simplifications in the interface of the OutputPointer family of Java classes.

FossilOrigin-Name: 962c3e0de2d64ab8a2bcf1a19f9c4224df3d15a41ac9f9b29da685be95c4ef7a

23 months agoMerge the latest trunk enhancements into the reuse-schema branch.
drh [Sat, 12 Aug 2023 12:16:36 +0000 (12:16 +0000)] 
Merge the latest trunk enhancements into the reuse-schema branch.

FossilOrigin-Name: d2b0ddcc75f2dbaabbc81de7a17d082d81162600ee331198cd9808b402721955

23 months agoTweaks and docs for the OutputPointer family of Java classes.
stephan [Sat, 12 Aug 2023 10:39:26 +0000 (10:39 +0000)] 
Tweaks and docs for the OutputPointer family of Java classes.

FossilOrigin-Name: 265c8fd0d4d425054f6bf7e9cb607ad2e0e46189f16c3014f7fdf9b650085497

23 months agoBind sqlite3_db_status() to JNI.
stephan [Sat, 12 Aug 2023 10:27:08 +0000 (10:27 +0000)] 
Bind sqlite3_db_status() to JNI.

FossilOrigin-Name: b79477a0af94127b0638a8822de01156bef855a7e167f678809e1c978e1a0c3e

23 months agoBind sqlite3_status(64)() to JNI.
stephan [Sat, 12 Aug 2023 10:06:59 +0000 (10:06 +0000)] 
Bind sqlite3_status(64)() to JNI.

FossilOrigin-Name: cefb6614e65ca1764ec72702f92f801382e63aa9b221fc9c68719d497e7499fd

23 months agoModernize the sqlite3 shell man page a bit, per [forum:d9aa201dee553bb2|forum request].
stephan [Fri, 11 Aug 2023 22:40:06 +0000 (22:40 +0000)] 
Modernize the sqlite3 shell man page a bit, per [forum:d9aa201dee553bb2|forum request].

FossilOrigin-Name: 3bc0693c4633f545f09dbee702e25354504b20836373a068447e6c61cb2ebd79

23 months agoAdd timing info to SQLTester.
stephan [Fri, 11 Aug 2023 21:25:33 +0000 (21:25 +0000)] 
Add timing info to SQLTester.

FossilOrigin-Name: b69b5facbf94e03e74d4a739ab85c5baac1c9ecbea8c330b2135d77e525b5d8a

23 months agoMerge trunk into jni branch.
stephan [Fri, 11 Aug 2023 21:24:08 +0000 (21:24 +0000)] 
Merge trunk into jni branch.

FossilOrigin-Name: 4f0aeeba0287e846908180eab6f7080ebe1323ebe49340771864d110e1ca5b2b

23 months agoFix a makefile deps problem which caused ext/jni build to fail if sqlite3.c/h were...
stephan [Fri, 11 Aug 2023 20:32:40 +0000 (20:32 +0000)] 
Fix a makefile deps problem which caused ext/jni build to fail if sqlite3.c/h were not created beforehand.

FossilOrigin-Name: 101de670774f63757180282763730aa53e70198bd7a674c27e6044632d39d22a

23 months agoIf SQLITE_USE_SEH is defined, handle structured-exceptions thrown by MSVC builds...
dan [Fri, 11 Aug 2023 19:31:51 +0000 (19:31 +0000)] 
If SQLITE_USE_SEH is defined, handle structured-exceptions thrown by MSVC builds if the *-shm file mapping is accessed after it becomes invalid for some reason.

FossilOrigin-Name: 8a6b0c24937e855b710f97b4aea973eff53e6d43e1182842731547aa4b37db2a

23 months agoMinor SQLTester test tweaks and have 'make tester' include the out-of-tree tests...
stephan [Fri, 11 Aug 2023 18:59:57 +0000 (18:59 +0000)] 
Minor SQLTester test tweaks and have 'make tester' include the out-of-tree tests if they are found.

FossilOrigin-Name: 6c8538d83495ce65dbd7417263b3b06dbbb2a649e9a61a743911944599d75ffc

23 months agoBind sqlite3_sql() and sqlite3_expanded_sql() to JNI. Start marking C-side functions...
stephan [Fri, 11 Aug 2023 18:04:53 +0000 (18:04 +0000)] 
Bind sqlite3_sql() and sqlite3_expanded_sql() to JNI. Start marking C-side functions which would need explicit mutex support if we remove 'synchronized' from their Java entry points (but there are many more left to mark).

FossilOrigin-Name: c7fb32d1ef30d34449c3289c384ce33317c770927534af20d4b96fa385da40bc

23 months agoAdd a doc link for the new sqlite3_js_posix_create_file().
stephan [Fri, 11 Aug 2023 17:45:23 +0000 (17:45 +0000)] 
Add a doc link for the new sqlite3_js_posix_create_file().

FossilOrigin-Name: 0d7aac45b8e7078cc80757e12d6f0b2584f2b0b184dacc2348ad3519978e5bf9

23 months agoAdd sqlite3.capi.sqlite3_js_posix_create_file() and oo1.OpfsDb.importDb() as alternat...
stephan [Fri, 11 Aug 2023 17:38:17 +0000 (17:38 +0000)] 
Add sqlite3.capi.sqlite3_js_posix_create_file() and oo1.OpfsDb.importDb() as alternatives for the newly-deprecated sqlite3_js_vfs_create_file().

FossilOrigin-Name: da6eaf8d8258f3e2c8633fd7faf4e90c3307b5c60bd8b69c626b3c82b19dbdef

23 months agoDeprecate sqlite3_js_vfs_create_file() because, it was discovered today, its out...
stephan [Fri, 11 Aug 2023 14:31:20 +0000 (14:31 +0000)] 
Deprecate sqlite3_js_vfs_create_file() because, it was discovered today, its out-of-scope use of the sqlite3_vfs, sqlite3_file, and sqlite3_io_methods APIs triggers unresolvable assertions in the core when built with SQLITE_DEBUG.

FossilOrigin-Name: f3647a3ac8eca8c821b0b1e403da7bfb0feabd0eb5ee83709cd4956dfc56a492

23 months agoProvide the -DSQLITE_LEGACY_JSON_VALID compile-time option to restore the
drh [Fri, 11 Aug 2023 11:30:43 +0000 (11:30 +0000)] 
Provide the -DSQLITE_LEGACY_JSON_VALID compile-time option to restore the
(incorrect) legacy behavior of json_valid(NULL).

FossilOrigin-Name: 00bc9f1b573d683829bf5eb301606c38d6a60fba957d8edaf59116c02cc650bf

23 months agoFix bug in the test case for the previous check-in. legacy-json-valid
drh [Fri, 11 Aug 2023 11:24:44 +0000 (11:24 +0000)] 
Fix bug in the test case for the previous check-in.

FossilOrigin-Name: c5daae88612607aa7a8b13b021cf586fc66e8bcd1fa9d948a860c881b7247761

23 months agoUp until version 3.42.0, there was a bug in json_valid() such that it would
drh [Fri, 11 Aug 2023 11:12:46 +0000 (11:12 +0000)] 
Up until version 3.42.0, there was a bug in json_valid() such that it would
return False (0) for a NULL input.  That bug is fixed in 3.42.0.  This
check-in adds a compile-time option -DSQLITE_LEGACY_JSON_VALID that restores
the old buggy behavior for applications that depend on it.

FossilOrigin-Name: 15c2eadbff8e732cca45d6c3771d1fcea5aab2127e87f2a611b41ccfef4d1a0d

23 months agoMark _all_ JNI binding funcs as synchronized so that Java can lock them and protect...
stephan [Thu, 10 Aug 2023 21:50:52 +0000 (21:50 +0000)] 
Mark _all_ JNI binding funcs as synchronized so that Java can lock them and protect our global-state access. The alternative is writing a mountain of C-side code to do the same thing.

FossilOrigin-Name: afe190a940441de9bef8835c2dc6d278f861a772c3b7c7a2d399b2eabd4872e3

23 months agoWork around jdk8 and jdk19 mangling the C name of sqlite3_db_config() differently...
stephan [Thu, 10 Aug 2023 21:29:59 +0000 (21:29 +0000)] 
Work around jdk8 and jdk19 mangling the C name of sqlite3_db_config() differently. Correct the variadic arg handling of the JNI-side subset of sqlite3_db_config() options.

FossilOrigin-Name: 746894c3c043c47f8b4c231de8921df81c5d0634260d299359bea73132dc7867

23 months agoAdd a working dist zip file for the JNI bits.
stephan [Thu, 10 Aug 2023 20:52:14 +0000 (20:52 +0000)] 
Add a working dist zip file for the JNI bits.

FossilOrigin-Name: d6a4d212ceba662470d8957b6a8d7075d18a84bd0d3e13ce7adcab03604fc3b7

23 months agoInitial pass at 'make dist' rules for the JNI bundle, but they still need a bare...
stephan [Thu, 10 Aug 2023 18:57:37 +0000 (18:57 +0000)] 
Initial pass at 'make dist' rules for the JNI bundle, but they still need a bare-bones, posix-make-compatible makefile to include in the bundle.

FossilOrigin-Name: ff54e66a4d43f2f0f8b25ded970779e6760865a05346e09b39607bb035b02bd7

23 months agoNew testcase() macro in the tokenizer, to better document its behavior.
drh [Thu, 10 Aug 2023 18:50:00 +0000 (18:50 +0000)] 
New testcase() macro in the tokenizer, to better document its behavior.

FossilOrigin-Name: b2fdac0b151864eb2aa79f0b0ee60f9c6d9f3eb8c7626605eac17a02a8cf59bc

23 months agoMerge trunk into jni branch for the newly-relocated version-info tool.
stephan [Thu, 10 Aug 2023 17:39:26 +0000 (17:39 +0000)] 
Merge trunk into jni branch for the newly-relocated version-info tool.

FossilOrigin-Name: cc8e8cba67c0dcfb9b416041a19456cf5248d909f3efb6fee707a5950be4f374

23 months agoMove ext/wasm/version-info.c to tool/ for re-use in build other dist bundles.
stephan [Thu, 10 Aug 2023 17:32:37 +0000 (17:32 +0000)] 
Move ext/wasm/version-info.c to tool/ for re-use in build other dist bundles.

FossilOrigin-Name: 4b0871fd367b6d9706e892aa13f64604967f5e3ba92381960f73aeabd3d23f84

23 months agoMerge latest trunk changes into this branch. wal-shm-exceptions
dan [Thu, 10 Aug 2023 17:07:34 +0000 (17:07 +0000)] 
Merge latest trunk changes into this branch.

FossilOrigin-Name: 3ed89c344fcb3b7ee8b764d95144643e42e053e1116150d6eda8355fbd6669df

23 months agoAdd SQLTester --keep-going flag to allow it to continue to the next script after...
stephan [Thu, 10 Aug 2023 16:42:22 +0000 (16:42 +0000)] 
Add SQLTester --keep-going flag to allow it to continue to the next script after an error.

FossilOrigin-Name: 4d635f781b55ed9011bdf07ee6bed2d004b1c2ebba76aa110e26d8fe3152a733

23 months agoDocument that auto-extensions registered via JNI will fail if they open a db (to...
stephan [Thu, 10 Aug 2023 13:10:25 +0000 (13:10 +0000)] 
Document that auto-extensions registered via JNI will fail if they open a db (to avoid triggering an endless loop in the auto-extensions). Discover the hard way that JDKv19 creates different mangled JNI names for some functions than JDKv8. Start reformatting much of the JNI API decls in prep for making them even longer.

FossilOrigin-Name: 99c0941f1c006622932a9cca12661f354f363a6c8a2b5675ea66149e0a9eb927

23 months agoResolve two assertions in the auto-extension JNI which were triggered via new SQLTest...
stephan [Thu, 10 Aug 2023 12:36:40 +0000 (12:36 +0000)] 
Resolve two assertions in the auto-extension JNI which were triggered via new SQLTester infrastructure. Move SQLTester's db-init SQL injection into an auto-extension.

FossilOrigin-Name: 2952906c30bc2b7987f2c39837d56bd121f5817dc094e6ccdb6d4eea5e9b8d17