]>
git.ipfire.org Git - thirdparty/sqlite.git/log
dan [Tue, 8 Nov 2022 19:36:26 +0000 (19:36 +0000)]
Do not attempt to run test script dbpagefault.test with SQLITE_OMIT_VIRTUALTABLE builds.
FossilOrigin-Name:
901918c4867557e51160ef9c495e4e007de26cfe07c237addc00a388662957e8
dan [Tue, 8 Nov 2022 15:49:12 +0000 (15:49 +0000)]
Fix a problem in main.mk preventing the amalgamation-testfixture target from building.
FossilOrigin-Name:
ccf00a0e22a2a9815ff7db1c6c6457fce35aaf50843c1b5ff2adda22d6f70314
drh [Mon, 7 Nov 2022 19:40:20 +0000 (19:40 +0000)]
Further improvements to the handling of the u32 and u16 typedefs in the
shell.c source file.
FossilOrigin-Name:
55a19677d723147aeb2b4a86bbd01756ddeb2072cba72c3145ad32d335e203b0
drh [Mon, 7 Nov 2022 18:36:02 +0000 (18:36 +0000)]
Improve the ability of mkshellc.tcl to remove redundant typedefs from the
generated shell.c code. This is needed to get shell.c to build on older
C compilers.
FossilOrigin-Name:
3645585f37631d60cefab1d55cdb1ee060aae87317b9b158a01329ca8a4d3e1e
dan [Mon, 7 Nov 2022 18:00:18 +0000 (18:00 +0000)]
Add the sqlite3rbu_rename_handler() API. To override the default routine that RBU uses to rename files.
FossilOrigin-Name:
ebbb1f88e7b5d6cbe84d400f1a187acedb4c668d0b7e4c63bf1496e57da9b8ad
stephan [Mon, 7 Nov 2022 17:21:53 +0000 (17:21 +0000)]
Minor doc updates in speed-check.sh. No code changes.
FossilOrigin-Name:
d2ed4116fbf1de3c840f84e05db6f29f7b489518ac07d56f61df153deab6bf6b
drh [Mon, 7 Nov 2022 15:23:51 +0000 (15:23 +0000)]
drh [Mon, 7 Nov 2022 15:01:05 +0000 (15:01 +0000)]
stephan [Mon, 7 Nov 2022 13:06:20 +0000 (13:06 +0000)]
Add sqlite3.wasm.alloc.impl() as a "public back door" into the low-level non-throwing allocator. Correct sqlite3.WasmAllocError constructor to behave like its usages expect it to and add tests for that.
FossilOrigin-Name:
cea8bf9a144d842c4755c3130273524926e8c4831d7f21c4e34d4e8c74109c8c
drh [Mon, 7 Nov 2022 12:21:06 +0000 (12:21 +0000)]
Fix requirements marks so that they match documentation corrections.
FossilOrigin-Name:
10d6189d23133006b39ea230045a918483721dd48f5558f77e57e23693097d16
stephan [Mon, 7 Nov 2022 12:12:27 +0000 (12:12 +0000)]
drh [Mon, 7 Nov 2022 11:19:28 +0000 (11:19 +0000)]
Fix the documentation regarding negative length parameters for
sqlite3_result_text() interfaces, to point out that the length parameter
to sqlite3_result_text64() cannot be negative.
[forum:/forumpost/
cf1d043b07 |Forum post
cf1d043b07 ].
Comment/documentation change only.
FossilOrigin-Name:
8016507651f377b08deb3a13cc559d56ce6e934c3073a8e63d05fd946b8403a4
drh [Mon, 7 Nov 2022 11:05:53 +0000 (11:05 +0000)]
Make sure that the recoverStrlen() function (used internally by the new
recovery extension) is 64-bit safe.
FossilOrigin-Name:
ea30a6bfc463acce26a4d710e7bf56519ad096ce2fe904ee7e199f5c55068034
drh [Sun, 6 Nov 2022 17:19:34 +0000 (17:19 +0000)]
The recoverAssertMutexHeld() function is for testing and verification only
and should be a harmless no-op for production builds.
[forum/forumpost/
b4f2c7d402 |Forum post
b4f2c7d402 ].
FossilOrigin-Name:
d75504710c86af0037ac897106aadffe54955463195ee4dfb2cdfc81d396cbb4
dan [Sat, 5 Nov 2022 19:26:45 +0000 (19:26 +0000)]
Update test file dbpagefault.test to account for the restriction on using SQLITE_VTAB_DIRECTONLY virtual tables from within triggers.
FossilOrigin-Name:
2b68fc8aa35cc69e4d2c26aaebbf3f2b1f1c08d15ca9efcbe5be21d45735d3f1
dan [Fri, 4 Nov 2022 18:32:45 +0000 (18:32 +0000)]
Tweaks to recover module test scripts to work with various permutations.
FossilOrigin-Name:
454c61e818f6941c9a23f6600e37828a3f2b2ad3c6dbc8d6223570aed5d9cd8b
dan [Fri, 4 Nov 2022 17:07:33 +0000 (17:07 +0000)]
Another test case fix for auto-vacuum builds.
FossilOrigin-Name:
c1c47eff48e0831b5aed987e90d797aee99caf1861fa8318c6c3ecfb108de7e6
dan [Fri, 4 Nov 2022 16:39:39 +0000 (16:39 +0000)]
Fixes to recover module test scripts so that they may be used with SQLITE_DEFAULT_AUTOVACUUM and SQLITE_SECURE_DELETE builds.
FossilOrigin-Name:
0e5597ce5353dea2cdb092b166b57ba1d60f8115eb468349f2b2869803691a2c
dan [Fri, 4 Nov 2022 15:17:14 +0000 (15:17 +0000)]
Fix Tcl tests so that they again build and run with SQLITE_OMIT_VIRTUALTABLE defined.
FossilOrigin-Name:
06a9dbea40c8a0cdfae6b127a1ce1cba0547acdf1115c087e9b790a78c264b52
drh [Fri, 4 Nov 2022 12:59:04 +0000 (12:59 +0000)]
Remove an unimportant testcase() macro that is no longer reachable due to the
improvement in corruption detection.
FossilOrigin-Name:
cd7e3568a9b0c0f5ef5ca8a29c55cefe2bbad2dbc88a3718a87bb24a8ada3b7f
dan [Fri, 4 Nov 2022 11:59:40 +0000 (11:59 +0000)]
drh [Fri, 4 Nov 2022 11:54:42 +0000 (11:54 +0000)]
Enhance the ability of the OP_Found and similar opcodes to detect truncated
index records and report SQLITE_CORRUPT.
dbsqlfuzz
2b12f90aeff8e081706c7e9b58834f04869f446c . Test cases in TH3.
FossilOrigin-Name:
059a09da2c5fd9c7e723c713565fbaf71602079feef0704129cc5cbbd0033936
stephan [Fri, 4 Nov 2022 09:02:21 +0000 (09:02 +0000)]
Correct sqlite3-wasm.c's SQLITE_DEFAULT_CACHE_SIZE (it's measured in kb, not bytes).
FossilOrigin-Name:
479ad980dfe509403e184e39a5aa441171e47b3297e05039f85516e72e9f15be
stephan [Thu, 3 Nov 2022 22:51:20 +0000 (22:51 +0000)]
Add experimental esm target to ext/wasm/GNUmakefile to tell emcc to generate sqlite3.mjs (ES6 module) instead of sqlite3.js. Related to discussion at [forum:
ed4596cf8496a39b ].
FossilOrigin-Name:
e55d8eba83012492d85418dc0faedce5896027ecc70295a5ca1826f61a5edbaf
stephan [Thu, 3 Nov 2022 21:21:10 +0000 (21:21 +0000)]
Globally replace '' with "" for empty JS strings to please C preprocessor.
FossilOrigin-Name:
e92e1f42bef94a1df29f66b4111ebfde93eba3759bc5d5a9c95f714508851346
stephan [Wed, 2 Nov 2022 14:08:59 +0000 (14:08 +0000)]
Minor build cleanups and fix a harmless race condition in the OPFS part of tester1.js.
FossilOrigin-Name:
70ee6ee014bc4e2c1daa9b4a8909cf76ccecf32de1eb39055f20d3d0b1daa1bd
drh [Wed, 2 Nov 2022 14:08:26 +0000 (14:08 +0000)]
Clarify documentation regarding the --recovery-db option to ".recover" and
the magic 789 configuration option it is associated with.
FossilOrigin-Name:
f6fa0cffa921ccde8910e7fa4a63c2e4ef8ddb376c8ce99e436b27ac332c4498
drh [Wed, 2 Nov 2022 13:09:14 +0000 (13:09 +0000)]
Minor improvements to API documentation in comments for the recovery
extension.
FossilOrigin-Name:
ed1c3515ad6a988e07a8b4583fbc38be257e6eae7443b01a242b98207ce78162
stephan [Wed, 2 Nov 2022 11:53:31 +0000 (11:53 +0000)]
Add sqlite3_wasm_vfs_create_file() to replace Emscripten's FS.createDataFile() in a (mostly) VFS-agnostic way. Add a test for worker1's export (to bytearray) support. Re-add worker1 open-from-bytearray using sqlite3_wasm_vfs_create_file() but it's untested (requires a new interactive test app or maybe reconsideration).
FossilOrigin-Name:
b35e1225c91a3cadc0d25af1e4e790237256d194990faa13190e343ed03e11c5
drh [Wed, 2 Nov 2022 11:25:33 +0000 (11:25 +0000)]
Emcc seems confused by SQLITE_DEBUG, for reasons unknown. Use NDEBUG instead
to simplify the #ifdef logic in sqlite3recover.c.
FossilOrigin-Name:
2610779ac84ac4a1a6901b6244653faf0c49ac6f0a4710a19aaf2a13106ae742
stephan [Wed, 2 Nov 2022 08:49:05 +0000 (08:49 +0000)]
Fix a symbol name typo which broke and exception-handling case in OPFS xOpen().
FossilOrigin-Name:
5bc83d569594e104e90b1acef1a5fd23655b2089de393a6776e799fdef2082f5
stephan [Wed, 2 Nov 2022 08:10:22 +0000 (08:10 +0000)]
Fix a missing symbol in non-SQLITE_DEBUG builds.
FossilOrigin-Name:
17cdcad627205cdc8ae8114df44ad2a44e59603200efb238fbbb5c30ea0a453e
drh [Tue, 1 Nov 2022 21:42:50 +0000 (21:42 +0000)]
dan [Tue, 1 Nov 2022 19:35:54 +0000 (19:35 +0000)]
Instead of (const char*), use a special type - sqlite3_filename - as the filename argument passed to VFS method xOpen().
FossilOrigin-Name:
90df04e5a25907e748227c484b601b7dbd87c037556a0e87f8423f529d08bb6b
drh [Tue, 1 Nov 2022 18:56:39 +0000 (18:56 +0000)]
dan [Tue, 1 Nov 2022 17:43:19 +0000 (17:43 +0000)]
Instead of (const char*), use a special type - sqlite3_filename - as the filename argument passed to VFS method xOpen().
FossilOrigin-Name:
bd1fe4de8a2e8b8de19a7f90b9fdafb641ad11a6f0c96c0b4495d5bf80885675
mistachkin [Tue, 1 Nov 2022 14:13:05 +0000 (14:13 +0000)]
Fix compilation errors in the recover API seen with MSVC.
FossilOrigin-Name:
78d17c4fedc1629bf161f9858f2b8bf35506155ccaa0acc084b419d244d4f75d
drh [Tue, 1 Nov 2022 13:12:20 +0000 (13:12 +0000)]
Fix a #ifdef involving SQLITE_OS_KV that was adding code unnecessarily.
FossilOrigin-Name:
b6c1b6e4a3bc21c40d6faca6f70842df5201f21c96a076a895410660630461c0
drh [Tue, 1 Nov 2022 12:10:39 +0000 (12:10 +0000)]
Enforce affinity on materialized tables for subqueries and views. Also,
do not allow UNION ALL flattening if the affinity of a result column varies
between different arms of the compound. This is a fix for
ticket [
57c47526c34f01e8 ].
FossilOrigin-Name:
88a05141c28e5ff1357c3c599493e4ffb8f3821bab04be80244deac62e49135c
drh [Tue, 1 Nov 2022 12:01:10 +0000 (12:01 +0000)]
Improvements to comments. Change the "optimization_control" TCL command
in the test harness so that it returns the new optimization mask, for
verification.
FossilOrigin-Name:
a3a500127d4752ee05c183e9ac97a2bc27768bf7063b04b5c1405cd3fd3931f5
stephan [Tue, 1 Nov 2022 11:09:34 +0000 (11:09 +0000)]
stephan [Tue, 1 Nov 2022 07:49:49 +0000 (07:49 +0000)]
Significant cleanups and expansion of the sqlite3.opfs utilities. Add oo1.DB.dbVfsName(). Add VFS name to worker1:open's arguments and result.
FossilOrigin-Name:
86a341d7e061f946b39e8647ddd4743013b851b33ae9e6e755d8dbc53fba5286
drh [Tue, 1 Nov 2022 01:07:29 +0000 (01:07 +0000)]
Do not flatten a UNION ALL subquery where the column affinities do not match
on all arms. Force that subquery to be materialized.
FossilOrigin-Name:
1b8a128832c1633cbb86999d347fef64ac45fe134dac61132112fc97f24676a0
drh [Tue, 1 Nov 2022 00:52:22 +0000 (00:52 +0000)]
Enforce column affinity on the materialization of a subquery or view.
FossilOrigin-Name:
b6692de374d7f489d8cf8877bdfef19501bc5ecb0781d42750807eeb58f2e7cd
drh [Mon, 31 Oct 2022 18:01:05 +0000 (18:01 +0000)]
Make the UPDATE method of the sqlite_dbpage virtual table rebust against
OOM errors. [forum:/forumpost/
bbcf0dd6ca |Forum post
bbcf0dd6ca ]. Test case
in TH3.
FossilOrigin-Name:
d15c9a4a323b825eb80e706e12e9df95e5db458024f51e6e537940efc8234d8b
stephan [Mon, 31 Oct 2022 13:50:05 +0000 (13:50 +0000)]
Worker1: use a list, rather than a single slot, to manage the default db link so that we can keep the least-recently-opened db as the default. Re-introduce worker1.export() but do not yet expose it until an equivalent import() (or open() option) is implemented.
FossilOrigin-Name:
c7750c101d9b7baa31496731bc34ea0a9b2bad0c11e2b3e92a8c7b327135c1bb
stephan [Mon, 31 Oct 2022 11:53:34 +0000 (11:53 +0000)]
Internal tweaks to the OPFS VFS result codes.
FossilOrigin-Name:
32e1a2d2eb8738ae1635e413829f6cf7f64c63d2a86b72940a573de89948e529
stephan [Mon, 31 Oct 2022 11:09:14 +0000 (11:09 +0000)]
Add oo1.DB.exec() 'returnValue' option, which specifies what exec() should return. Defaults to the db object and enables direct return of the result rows array or a list of the individual SQL statements. Other code-adjacent internal cleanups.
FossilOrigin-Name:
69d36a6aa5e2cd79d26c0fd3e0d20fe8838fd1be97db07725233bfff1dfe6643
dan [Mon, 31 Oct 2022 10:53:23 +0000 (10:53 +0000)]
Avoid a segfault that could occur when running the recover API on a database handle with memory-mapping enabled.
FossilOrigin-Name:
e02c697281a777c33070168af784b2d291397e488244a217620897f40aed7158
drh [Mon, 31 Oct 2022 01:22:38 +0000 (01:22 +0000)]
Extra OOM check in shell_error_context() of the CLI.
[forum:/forumpost/
5708841db0 |forum post
5708841db0 ].
FossilOrigin-Name:
cb12ac5de17e677f089d7b0b46803efbd9a9178972ffb0454a8b557b06633658
stephan [Sun, 30 Oct 2022 11:39:47 +0000 (11:39 +0000)]
Add oo1.DB.selectArray() and selectObject().
FossilOrigin-Name:
7660db2a2e9c4f3a6a9343d6929744ad0f4be6820976411f9080165491da59b7
stephan [Sun, 30 Oct 2022 10:24:53 +0000 (10:24 +0000)]
Adjust automatic OPFS locking retries such that they will wait up to a total of 3 seconds spanning 4 attempts.
FossilOrigin-Name:
bbce49d81abc491ca666474040a53057e26e99131fea9449de253f88f4415ded
stephan [Sun, 30 Oct 2022 09:47:33 +0000 (09:47 +0000)]
Minor WASM build cleanups. Enable custom Module.instantiateWasm() when not in WASMFS mode (where it doesn't work). Add sqlite3.debugModule URL param to enable some module-init-time debugging output.
FossilOrigin-Name:
50f678846a2b3c3d0818f0bae89f2ee86252a2e6a9c7029ebaae3953ca0fa14c
stephan [Sun, 30 Oct 2022 08:39:18 +0000 (08:39 +0000)]
Reduce wasm module's starting memory from 128mb to 16mb. The latter value is needed only for WASMFS-based batch-runner.js, as WASMFS builds cannot be configured for dynamic memory growth without a tremendous performance hit.
FossilOrigin-Name:
ed9d93c48752ba6e18edc1238a8ccdbf6bb65c74fb52a89d515f8b0ab6bea13a
mistachkin [Sun, 30 Oct 2022 07:01:31 +0000 (07:01 +0000)]
stephan [Sat, 29 Oct 2022 12:31:50 +0000 (12:31 +0000)]
Update ext/wasm/README.md for recent developments.
FossilOrigin-Name:
c76ec31ebf4d80ec8cbd2aa2017e1d6bc32eae66bfbcc130c053ddb403599c6b
stephan [Sat, 29 Oct 2022 10:14:56 +0000 (10:14 +0000)]
stephan [Sat, 29 Oct 2022 09:45:01 +0000 (09:45 +0000)]
Expand and document the wasm doc-update make rules. Extend the dist rules to fail more readily if there's a problem.
FossilOrigin-Name:
362ec11ec09f441b745cbd8ac8366b6bc998aba6e2b70782a88f189a3ffa9923
stephan [Sat, 29 Oct 2022 07:54:10 +0000 (07:54 +0000)]
Move the sqlite3.capi.wasm namespace to sqlite3.wasm. This causes a tiny bit of naming confusion with the sqlite3.wasm *file*, but seems to make more sense than having it as a sub-namespace of capi.
FossilOrigin-Name:
3f16eb18d6186ca972fca952ccac18649e7a905213f589e53c0c9333e695448d
drh [Fri, 28 Oct 2022 18:52:05 +0000 (18:52 +0000)]
Fix harmless compiler warnings in testing code.
FossilOrigin-Name:
2f53612388507f9b1ecbec3c15281825beab54b8062d97d0ab6f009c5fed347b
drh [Fri, 28 Oct 2022 18:35:06 +0000 (18:35 +0000)]
stephan [Fri, 28 Oct 2022 14:33:50 +0000 (14:33 +0000)]
Remove sqlite3_interrupt() from the WASM build, as it is essentially impossible to employ in JS's threading model.
FossilOrigin-Name:
e85387590061edbb6cdc04de792ab86f43afaa5c8d1b0792206cb5b481c7d76a
stephan [Fri, 28 Oct 2022 11:40:46 +0000 (11:40 +0000)]
Add ext/wasm/module-symbols.html. Adjacent minor JS touchups.
FossilOrigin-Name:
24f12e681e06e3b71a6ac9c82255fe0270953a74c711405841f7e385eeafe874
stephan [Fri, 28 Oct 2022 10:36:18 +0000 (10:36 +0000)]
Minor sqlite3.oo1 API reorg prompted by documenting.
FossilOrigin-Name:
55237924ca363c5a3e0f8c82620eb6626a98311615866197375a86876b9da3a1
drh [Thu, 27 Oct 2022 23:17:49 +0000 (23:17 +0000)]
dan [Thu, 27 Oct 2022 20:27:45 +0000 (20:27 +0000)]
Fix another crash in the recover extension triggered by a corrupt database.
FossilOrigin-Name:
d125377378916fb3147612a536fde15ee955176eea9ea6eaa4a2ee5f1e8e1cbe
dan [Thu, 27 Oct 2022 19:06:42 +0000 (19:06 +0000)]
Fix another problem to do with recovering from in-memory databases.
FossilOrigin-Name:
5a7bfd4a217cd80882a1827674b479cdc547419a785e06e0ee82cb8cfca42701
dan [Thu, 27 Oct 2022 19:02:51 +0000 (19:02 +0000)]
Ensure that the VFS wrapper in the recover extension does not attempt to invoke undefined methods on the underlying VFS.
FossilOrigin-Name:
347c575108bc8112613a02afda1247bdbed24c15def7eb412d0b27aba047715b
dan [Thu, 27 Oct 2022 18:35:09 +0000 (18:35 +0000)]
Fix an assert() failure in the recover extension triggered by a zero value as the first page-number in an overflow page chain.
FossilOrigin-Name:
44c0874c33e76ce708022e5c38c74f75565a8cea9f4c5b067cc0a54079aeee20
drh [Thu, 27 Oct 2022 18:20:08 +0000 (18:20 +0000)]
In the CLI, ensure that input to utf8_width_print is not NULL, or if it is,
change it to an empty string. For for the problem reported by
[forum:/forumpost/
2961cf13eec61876 |forum post
2961cf13eec61876 ].
FossilOrigin-Name:
9ecc9d25ea62a7777bbf621989a5c577b612784121a20465cda4d4023fa9634d
dan [Thu, 27 Oct 2022 18:19:45 +0000 (18:19 +0000)]
Change the name of the ".recover" command option "--freelist-corrupt" to "--ignore-freelist".
FossilOrigin-Name:
afce8443ace57c3c99c6810be98f05ed716ae504b68098726c869843c643bbf0
stephan [Thu, 27 Oct 2022 14:41:38 +0000 (14:41 +0000)]
speedtest1.html: when vfs==kvvfs, increase --size from 2 to 4, as enabled by [
a4d40f6346e7 ]. --size 5 is 4.96mb out of (supposedly) 5mb, which works but is a bit too close to the edge.
FossilOrigin-Name:
a608d584a8a68ebaf8566cffc9c33f59309b710e7b29229a15bef529702f35d5
drh [Thu, 27 Oct 2022 14:28:15 +0000 (14:28 +0000)]
Automatically set temp_store=MEMORY if the VFS is kvvfs.
FossilOrigin-Name:
a4d40f6346e7eb2a5239684dba86f297358122768a4d4bf6786b6028f4300e04
drh [Thu, 27 Oct 2022 14:00:21 +0000 (14:00 +0000)]
Do not accept a NULL pointer for the filename in KVVFS.
FossilOrigin-Name:
fdecbd3b5bcdeb358015f461ac6c863f12ab180ab4624ed50734e41e557d8186
drh [Thu, 27 Oct 2022 12:46:17 +0000 (12:46 +0000)]
The kvvfs VFS should remember the page size when writing to the database.
FossilOrigin-Name:
fc5503c8acb085042e877c9de43256a4fee27f63ab35e2ddad18e40734ed00d4
stephan [Thu, 27 Oct 2022 11:32:20 +0000 (11:32 +0000)]
Re-enable the .recovery and .dbinfo commands in shell.c.in in the fiddle build, as those were fixed by [
3d20d77a3511 ] and [
cd0aa27d1732 ].
FossilOrigin-Name:
ba3a7a4a9997f62b78467d78d95fa5b58a03ecb2e2ccb68f4d316fc08fd02f86
dan [Thu, 27 Oct 2022 11:25:08 +0000 (11:25 +0000)]
Do not use sqlite3_result_text16() in the recover extension if SQLITE_OMIT_UTF16 is defined.
FossilOrigin-Name:
3d20d77a3511bb223474da8491e1da8aec098c41c1b81ab78ff80fbd37d5b568
dan [Thu, 27 Oct 2022 11:12:54 +0000 (11:12 +0000)]
Fix a problem with running ".recover" on an in-memory database.
FossilOrigin-Name:
87b4cca2b84845cee603d40fbf16c9635d6dc2d19d2f37ae86abfeff716c9a85
dan [Thu, 27 Oct 2022 10:51:49 +0000 (10:51 +0000)]
Do not use sqlite3_mutex_xxx() functions in sqlite3recover.c when built with SQLITE_THREADSAFE=0.
FossilOrigin-Name:
cd0aa27d1732abc61c8a8440118ff629f7dca185d2f515ce1f6090c49d8dc890
stephan [Thu, 27 Oct 2022 03:57:48 +0000 (03:57 +0000)]
stephan [Thu, 27 Oct 2022 03:56:01 +0000 (03:56 +0000)]
Restructure and simplify the feature-detection #defines of the recovery support in shell.c.in and disable it when building fiddle because it uses features we elide from the wasm build (e.g. utf16), leading to link errors.
FossilOrigin-Name:
ddd10c05c5d16d7205c347c5c1e73a75faecb2b7ec88a4a15875856765e1b143
stephan [Thu, 27 Oct 2022 03:03:16 +0000 (03:03 +0000)]
Expose sqlite3_randomness() to WASM and add a custom binding for it which can populate a JS byte array. Add WhWasmUtil.isPtr().
FossilOrigin-Name:
333e67076b4bc967bb543ef8e265c63f6e3498c38ac121a7d1eff4a1d7a71c63
dan [Wed, 26 Oct 2022 21:14:21 +0000 (21:14 +0000)]
Disable the push-down optimization for sub-queries that are INTERSECT, UNION or EXCEPT compounds. dbsqlfuzz
a34f455c91ad75a0cf8cd9476841903f42930a7a .
FossilOrigin-Name:
346a3b12b861ce7ba369e98cd336f79a1d4f7a7bb9acd7a4f63f37b391755bf5
drh [Wed, 26 Oct 2022 20:12:46 +0000 (20:12 +0000)]
Remove an unused variable from the recovery extension.
FossilOrigin-Name:
a029dddff4f4ed7275538610cbd9cea658b905b72924860ec9cda9e76dabcfac
dan [Wed, 26 Oct 2022 18:41:12 +0000 (18:41 +0000)]
Add the "recover" extension in ext/recover/, for salvaging data from corrupt databases.
FossilOrigin-Name:
a820792548da596ed0f8ab3fd1c04ec16647abbe51a2a5aac9e17c4f58be6d97
dan [Wed, 26 Oct 2022 18:29:19 +0000 (18:29 +0000)]
Remove an undefined left-shift operation from the recover extension.
FossilOrigin-Name:
a67082357a2cc348faf8236aafa7f39eb5cb673b1d114a594c6d5bb257f85b73
dan [Wed, 26 Oct 2022 18:22:22 +0000 (18:22 +0000)]
Merge further changes from trunk, including fix to dbdata.c.
FossilOrigin-Name:
bcf6b48d52c1ce656899f50bd508c0920cae8cf2ef3c0758a7633981f0f0f484
dan [Wed, 26 Oct 2022 18:04:34 +0000 (18:04 +0000)]
Make the shell .recover command and the dbdata.c module more robust in the face of corrupted databases.
FossilOrigin-Name:
4eef562a00ae988f2426c9af51f4165c0e4cbccd601061664a0c54c19b9cc70f
stephan [Wed, 26 Oct 2022 15:40:17 +0000 (15:40 +0000)]
Correct misuse of localhost-mode-only symbol S in fiddle-worker.js, which should fix the outage reported in [forum:
67d985ac0bbe407f |forum post
67d985ac0bbe407f ].
FossilOrigin-Name:
3b5aa50c223ac35c7d73e4629420a01408cd74d19ae5b887f91b7a657d91e026
stephan [Wed, 26 Oct 2022 15:34:51 +0000 (15:34 +0000)]
Corrected link to fiddle in ext/wasm/index.html (broken by [
3d7b4f36b7dd ]).
FossilOrigin-Name:
6efa0bae1678bf719a0693feeceb4c1e252fc86502bee9ee2a6d8af9a91d9b20
stephan [Wed, 26 Oct 2022 11:27:33 +0000 (11:27 +0000)]
Replace the newly-removed oo1.DB.getFilename() with DB.dbFilename() with the hope that the distinction from the dbInstance.filename property is clearer.
FossilOrigin-Name:
0b80543d75504c733b73b32f73b96074a4b0cebad64e47032926a3fefee41726
stephan [Wed, 26 Oct 2022 11:12:14 +0000 (11:12 +0000)]
Remove oo1.DB.hasFilename() and getFilename(), as they are unnecessary.
FossilOrigin-Name:
75c546b982024bf2b527c85271111d54158cb010867f6e29fc89e86cc8457cc5
drh [Wed, 26 Oct 2022 11:11:31 +0000 (11:11 +0000)]
Remove the sqlite3StdTypeMap global constant that was made
obsolete by [
aa6e908619624867 ].
FossilOrigin-Name:
3dfdfb3f12edb3f4267942598efd05d573e13b7c5d6cdbc3404373f41b8993dd
stephan [Wed, 26 Oct 2022 06:05:44 +0000 (06:05 +0000)]
Add --download-version flag to ext/wasm/version-info.c and correct dist target's output version format to match.
FossilOrigin-Name:
6f2a40d06dd9a56491d27928ed3785e08308c7dcea2b3f768097fc98ba91a910
stephan [Tue, 25 Oct 2022 16:57:42 +0000 (16:57 +0000)]
Add doc page link to the wasm dist README.txt.
FossilOrigin-Name:
c2380668d9a2ad04f6f27ef052190bda17cdb112895e93b94ae1da70db6983c8
stephan [Tue, 25 Oct 2022 16:04:44 +0000 (16:04 +0000)]
Correct -O level for fiddle build when built from the top-most directory (-Os instead of -O0).
FossilOrigin-Name:
ff4fc29c38b78dfd471e25942304cba352469d6018f1c09158172795dbdd438c
stephan [Tue, 25 Oct 2022 15:59:27 +0000 (15:59 +0000)]
Rename fiddle.html to index.html and move fiddle push-to-server rules from GNUmakefile into fiddle.make.
FossilOrigin-Name:
3d7b4f36b7dd01058d57fc8ef7689d9bbf1a219166796ed427180cd59d2c189d
stephan [Tue, 25 Oct 2022 15:38:38 +0000 (15:38 +0000)]
speedtest1: use the current (or default) vfs->xDelete method to unlink the db. This is specifically necessary when running the opfs vfs in a wasm build of speedtest1. This worked without this fix until recently because the affected test code was performing similar acrobatics in its stead.
FossilOrigin-Name:
d3c830bd37a402161b486d3631feceae5d00f89c2522aed65fcd2e666bd64238
drh [Tue, 25 Oct 2022 13:44:18 +0000 (13:44 +0000)]
Enhance the sqlite3_strglob() and sqlite3_strlike() interfaces so that they
will do sensible things with NULL string pointers. This is an extra layer
of defense against bugs such as reported by
[forum:/forumpost/
730b554179 |forum post
730b554179 ].
FossilOrigin-Name:
8ba9c884bded52e3e044ff39c826c04838e7c31f05d802f4a14d9ce5a01ab721
drh [Tue, 25 Oct 2022 13:42:10 +0000 (13:42 +0000)]
Make the ".dump" command of the CLI more robust against malformed databases.
See [forum:/forumpost/
730b554179 |forum post
730b554179 ].
FossilOrigin-Name:
0573edfb9e0b1fd51e8da20592c71b02040968c33fdec41c31a6b1b7d3e83262