]>
git.ipfire.org Git - thirdparty/sqlite.git/log
stephan [Sun, 6 Nov 2022 13:12:11 +0000 (13:12 +0000)]
shell.c.in: on non-Windows platforms, check for $XDG_CONFIG_HOME/sqlite3/sqliterc before ~/.sqliterc, per request in [forum:
7a16582b1e403c81 |forum post
7a16582b1e403c81 ].
FossilOrigin-Name:
49c6e438a83b9ff40ebadd3dfd5f58e6eea053575e15335909f5ee59a6dba82c
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
dan [Tue, 25 Oct 2022 11:05:31 +0000 (11:05 +0000)]
Merge latest trunk changes with this branch.
FossilOrigin-Name:
757e3f585959f4f113fee48fe3d504f037604c53a95c8d47ce5c2bccfb2af8ff
stephan [Tue, 25 Oct 2022 08:41:00 +0000 (08:41 +0000)]
stephan [Tue, 25 Oct 2022 08:15:57 +0000 (08:15 +0000)]
Remove persistence from the 'reverse log order?' checkbox in tester1.js to eliminate an inconsistency between the main-thread and worker-thread modes (the latter having no option for persistence of that setting).
FossilOrigin-Name:
ecf906b07f50b4fcc551d20326a1bb1189bd6c2274627fd293f9460658ebea07
stephan [Tue, 25 Oct 2022 08:06:17 +0000 (08:06 +0000)]
Minor cleanups and doc improvements in the OPFS sqlite3_vfs proxy.
FossilOrigin-Name:
48645f7bcacf81c4149f26d20ee1752fbe93a02f96b85bd7e28bfa49322137e5
drh [Mon, 24 Oct 2022 18:42:45 +0000 (18:42 +0000)]
drh [Mon, 24 Oct 2022 18:33:50 +0000 (18:33 +0000)]
Add a comment to a previously undescribed member of the Walker union.
FossilOrigin-Name:
69d704224e9ed022fcec591beff2ffcc4daf3e7fc586debfdcf00b25c1fddd87
dan [Mon, 24 Oct 2022 15:51:24 +0000 (15:51 +0000)]
Use the same "PRAGMA synchronous" setting for the output of a "VACUUM INTO" as are configured for the database being vacuumed.
FossilOrigin-Name:
86cb21ca12581cae9a29f42ba707bd9d789e667e5ddc0f64b24940d5d5c9a118
drh [Mon, 24 Oct 2022 13:20:48 +0000 (13:20 +0000)]
Improve the ability of the query planner to recognize covering indexes even
on tables with more than 63 columns and where the index is over columns
beyond the 63rd column.
FossilOrigin-Name:
f058773e41495ddbae698f9e9a4f62b7003112ea8614dfad69471340058735e4
drh [Mon, 24 Oct 2022 12:38:32 +0000 (12:38 +0000)]
Update the fuzzinvariant logic in fuzzcheck to the latest code from
dbsqlfuzz.
FossilOrigin-Name:
739ad584765f1fc0eb196db870785da1726805cc2d9dd0a831a37a9e55a4afe9
drh [Mon, 24 Oct 2022 11:10:40 +0000 (11:10 +0000)]
Fix built-in documentation for the ".mode qbox" command in the CLI.
FossilOrigin-Name:
3d7ea33be1076fd21681bdcff0c489646c017594b42b4a21a74e9e2d3947890b
drh [Mon, 24 Oct 2022 11:02:02 +0000 (11:02 +0000)]
Test cases for covering indexes on wide tables.
FossilOrigin-Name:
64c3777eb356b15094a9e9fcc135499ba22f4d847fb117afa6ccf19986e33585
drh [Sun, 23 Oct 2022 20:09:13 +0000 (20:09 +0000)]
The wide-table covering index detection must take into account aggregate
queries.
FossilOrigin-Name:
9ac73f83c53b9fba10bb1b8bbfd1a8dc8a2dc4a655e811d5b96335dbf2b6fdac
drh [Sat, 22 Oct 2022 23:09:29 +0000 (23:09 +0000)]
More frequently send the complete SELECT statement into sqlite3WhereBegin()
so that it can more accurately determine index coverage.
FossilOrigin-Name:
f6d09c5a0df940dbaa716df70df28218985b83540b34c468989729a3421ef38c