]>
git.ipfire.org Git - thirdparty/sqlite.git/log
dan [Mon, 21 Aug 2023 18:25:41 +0000 (18:25 +0000)]
Fix problems related to structured-exception-handling on this branch.
FossilOrigin-Name:
d3d77e35ea39df9e22032a7e1af5b7f38d53a4d43bc46afe36e342cdcfd17528
dan [Fri, 11 Aug 2023 19:36:24 +0000 (19:36 +0000)]
Merge latest wal2 changes, including support for handling of structured-exceptions in MSVC builds, with this branch.
FossilOrigin-Name:
331f2f3e5db9b6139be984f1b959cd0d51563adaa68452aa2f42741c69bc6319
dan [Fri, 11 Aug 2023 19:33:54 +0000 (19:33 +0000)]
Merge latest trunk changes, including support for handling of structured-exceptions in MSVC builds, with this branch.
FossilOrigin-Name:
00bfae9ffafd71dfd0bbdbdc174e4ed7d7a850b385416f83be36a4f4a55d1873
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
dan [Fri, 11 Aug 2023 18:31:17 +0000 (18:31 +0000)]
Fix a problem with handling savepoints in BEGIN CONCURRENT transactions.
FossilOrigin-Name:
ca422d00d7843ee72a1ae20753ba512896d6f6d2b1218523323946bf66f3c758
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
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
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
drh [Fri, 11 Aug 2023 11:46:08 +0000 (11:46 +0000)]
Merge all the latest trunk enhancements into the bedrock branch.
FossilOrigin-Name:
859932ebce830c757cf4e889f2efc54807bd4d7947cf5d64a5d9e570bf75ed80
drh [Fri, 11 Aug 2023 11:40:32 +0000 (11:40 +0000)]
Merge the latest trunk enhancements into the wal2 branch.
FossilOrigin-Name:
fe1bf30ca0c529c3c68f2531e28aca5659aef5d15c2e3a6925ecd35a5098386b
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
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
dan [Fri, 11 Aug 2023 11:23:35 +0000 (11:23 +0000)]
Update test scripts specific to this branch so that they work on windows.
FossilOrigin-Name:
f0ca13edad058628e454cc895faac5751de77115c5fea62e98c29d9fdb6b0559
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
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
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
dan [Thu, 10 Aug 2023 17:07:34 +0000 (17:07 +0000)]
Merge latest trunk changes into this branch.
FossilOrigin-Name:
3ed89c344fcb3b7ee8b764d95144643e42e053e1116150d6eda8355fbd6669df
dan [Thu, 10 Aug 2023 17:04:29 +0000 (17:04 +0000)]
Mark test script wal2big.test as "TESTRUNNER: slow".
FossilOrigin-Name:
ae7f3bcb5babfa50084f5b4d3c5663489dbf306440706152642b7f0fb47fa1f5
dan [Thu, 10 Aug 2023 17:03:33 +0000 (17:03 +0000)]
Merge latest trunk changes into this branch.
FossilOrigin-Name:
72f7807b34eee1fcfd94f72d27535e5273ed1f7ff3d464179a774b7c7241f5f5
drh [Tue, 8 Aug 2023 17:36:03 +0000 (17:36 +0000)]
Minor cleanups in sqlite3Int.h. By reordering some fields in the Parse
object, it packs more tightly and uses less memory and less CPU to
initialize.
FossilOrigin-Name:
aa6de539c09faa320b68c63659e602107145c4263fa680d5b40fe4d7d7ac4534
drh [Tue, 8 Aug 2023 16:53:12 +0000 (16:53 +0000)]
Fix an issue in the amalgamation generator in which it was not correctly
expanding the SQLite version in the header comment.
FossilOrigin-Name:
293f6191e9b328cb8a8d3fff0f7bd5a6f5390b5ff090497a170c791b6ea22917
dan [Mon, 7 Aug 2023 17:09:25 +0000 (17:09 +0000)]
Enhance sqlite3_vtab_nochange() so that it works with "UPDATE ... FROM ..." statements. Use this to allow some updates on fts5 contentless-delete tables.
FossilOrigin-Name:
27ff86e4d8d251dbbcc9f0682d3d7b040518cbeee891cfe253661d1fdbec4e4f
dan [Mon, 7 Aug 2023 16:15:56 +0000 (16:15 +0000)]
Changes so that sqlite3_vtab_nochange() works with "UPDATE ... FROM...". Use this to allow UPDATE on a contentless fts5 table if new values are supplied for all indexed columns.
FossilOrigin-Name:
16cd2161e312cf97129011fc829079db8f762b822b2f4fabf7ff6742c071302f
stephan [Mon, 7 Aug 2023 09:44:00 +0000 (09:44 +0000)]
Rename fts5_api pContext parameters to pUserData, per /chat discussion. This is a cosmetic change made to reduce confusion between those parameters and the two other context-type parameters in that API.
FossilOrigin-Name:
2ca064d8eb37252e16b0fec9924e9ba9289d96a737346431c6ba9cb1c161e5de
stephan [Sat, 5 Aug 2023 19:15:19 +0000 (19:15 +0000)]
stephan [Fri, 4 Aug 2023 16:01:55 +0000 (16:01 +0000)]
In the opfs-sahpool VFS's importDb() and exportFile() methods, throw if the actually-wrote/read amounts differ from the expected-to-write/read amounts, per feedback in [forum:
a4122e986f |forum post
a4122e986f ].
FossilOrigin-Name:
a617ebf4e5d1af1b5b15e9782ad111399caaa3ea7b99bb0c8691c8b4283b6d6e
drh [Fri, 4 Aug 2023 13:29:22 +0000 (13:29 +0000)]
Merge the json_remove() bug fix from trunk into the bedrock branch.
FossilOrigin-Name:
a8872aa588dd1367997924ea65267af6bd85e076e00f40fe150e3f33ef6d0dda
drh [Fri, 4 Aug 2023 13:24:40 +0000 (13:24 +0000)]
Merge the json_remove() bug fix from trunk into the wal2 branch.
FossilOrigin-Name:
e6c066cae4ed5d698820c0c1ea8840773146e9d1a665551d8d51bb9df121cdb7
drh [Fri, 4 Aug 2023 13:19:11 +0000 (13:19 +0000)]
Fix a bug in the jsonLookup() routine used to search JSON. Bug was
introduced by the recent (unreleased) JSON caching enhancements
check-in [
a4c1af616e672a0d ] merged into trunk at [
df099ad713011b67 ].
FossilOrigin-Name:
ba7a66db13b28da0b41f03be825a593608474a5ebda89e12d58d89db709b8f65
dan [Fri, 4 Aug 2023 11:10:10 +0000 (11:10 +0000)]
Change comment on Fts5ExtensionApi.iVersion from "always set to 3" to "always set to 2".
FossilOrigin-Name:
b7de399c277394a6a3bbf253d4177aa82753271e5087b98b2c2268f629a7dfdd
stephan [Fri, 4 Aug 2023 08:45:25 +0000 (08:45 +0000)]
Resolve the timing/ordering issue of a JS-to-WASM-converted xDestroy() function being uninstalled from WASM right before the underlying native call tries to call it. This has been a long-unnoticed bug which appears only when removing such functions or replacing them.
FossilOrigin-Name:
031c9a76b6ad1572e7a88f4d2d62f206b0d37bd1170e2c8a24248c5ec628f2f5
stephan [Fri, 4 Aug 2023 08:41:55 +0000 (08:41 +0000)]
drh [Thu, 3 Aug 2023 23:26:39 +0000 (23:26 +0000)]
Merge the latest trunk enhancements into the bedrock branch.
FossilOrigin-Name:
877ffece0531054f24410c9e4c0b89599a9506689cc97233d33c18b9a15e6308
drh [Thu, 3 Aug 2023 23:22:28 +0000 (23:22 +0000)]
Merge the latest trunk enhancements into the wal2 branch.
FossilOrigin-Name:
6fa71e11197111ab52d1983b35190899a5881dcb9ed822488c92bc839c72cb55
drh [Thu, 3 Aug 2023 18:14:09 +0000 (18:14 +0000)]
stephan [Thu, 3 Aug 2023 16:22:59 +0000 (16:22 +0000)]
Fix a discrepancy between sqlite3_values_to_js() and its API docs/intended behavior.
FossilOrigin-Name:
7b85c68fe252c0aa69724c82a95a4432e33ebdfb879b4b1b2ee2f9b98e9b792a
drh [Thu, 3 Aug 2023 13:30:00 +0000 (13:30 +0000)]
Fix build problems associated with SQLITE_OMIT_WSD and SQLITE_OMIT_TRIGGER.
FossilOrigin-Name:
de031a5ec863b11f0216d1a114740c8cf4572adb034a5d35ff1a5c07d81df800
drh [Thu, 3 Aug 2023 13:07:58 +0000 (13:07 +0000)]
Fix a test case whose value changes under the no_optimization permutation
due to the recent change to add the ability for SQLITE_TESTCTRL_OPTIMIZATION
to disable one-pass.
FossilOrigin-Name:
976e39c6322f9e51054546e2d9bc135b683d141054c645c9098002cdc310c7c7
drh [Thu, 3 Aug 2023 12:41:30 +0000 (12:41 +0000)]
Unix builds now assume the presence of nanosleep() in the standard library.
The -DHAVE_NANOSLEEP=0 compile-time option can be used to build on systems
(if any still exist) where this is not the case.
FossilOrigin-Name:
779d5dc8797ea246d0397f7e94b1be716b0baa735e8d9f5a6fc4cffd887a7420
drh [Wed, 2 Aug 2023 16:06:02 +0000 (16:06 +0000)]
Performance optimization for JSON rendering logic.
FossilOrigin-Name:
ea0b9aecbaca9a8e784fd2bcb50f78cbdcf4c5cfb45a7700bb222e4cc104c644
drh [Wed, 2 Aug 2023 13:45:16 +0000 (13:45 +0000)]
Remove an unreachable branch in the ascii-to-floating-point conversion that
was added by [
e989a37ff9d5b52e ].
FossilOrigin-Name:
c4347e4400e96f932ac12f8f22484a2ebce2a578d1b2181977954c432f117bfd
drh [Wed, 2 Aug 2023 13:38:02 +0000 (13:38 +0000)]
Stricter enforcement of the idea that a MATERIALIZED common table expression
is an optimization fence.
FossilOrigin-Name:
354425f8d97437bd156265a6914f98cce91b42abc9e773453ef4d817e308dc9a
drh [Wed, 2 Aug 2023 13:29:01 +0000 (13:29 +0000)]
Remove a condition from query flattening that is now taken care of by
the caller. Factor out the reverse_unordered_selects processing from the
main loop of sqlite3WhereBegin() for performance.
FossilOrigin-Name:
f068f105fb158634321bf6401f0774c81059932d213a18b627ae98bcffc10912
drh [Wed, 2 Aug 2023 12:39:56 +0000 (12:39 +0000)]
Simplify the select.c logic that enforces the optimization fence around
a MATERIALIZED common table expression. Do not allow the
reverse_unordered_selects setting to affect a fenced CTE that itself has
an ORDER BY clause.
FossilOrigin-Name:
165b9bda243777ae7fb6f51ee7ad58771c581b82ef9a70268eb9764e9e6eba6f
drh [Wed, 2 Aug 2023 11:06:27 +0000 (11:06 +0000)]
Never flatten a CTE that is labeled MATERIALIZED. This is really something
of a bug fix because the documentation says that a MATERIALIZED CTE is an
optimization barrier.
FossilOrigin-Name:
b7ef9796f548ce43e06673f86bbec68157aae5e4ee8451e1d87ee5f70af1bb27
drh [Wed, 2 Aug 2023 00:09:15 +0000 (00:09 +0000)]
When a query is inside an AS MATERIALIZED CTE, do not attempt the
omit-ORDER-BY optimization. If the developer specifies MATERIALIZED,
that means he wants the sort to actually happen.
FossilOrigin-Name:
aa769ee7477171f26a091cadff98aa4f48da7752ade20b405a95c4525456f62e
drh [Tue, 1 Aug 2023 19:10:30 +0000 (19:10 +0000)]
Avoid ASAN warnings when converting over-sized long double values into double.
FossilOrigin-Name:
e989a37ff9d5b52e0090d59be077ad2260c8df5d4c2c2d8088b1160de64dffd4
stephan [Tue, 1 Aug 2023 16:41:12 +0000 (16:41 +0000)]
Filter the wasmfs-specific JS module result type check out of non-wasmfs builds.
FossilOrigin-Name:
ef7c121049f77200ecc4da260a90776264af0e84122d0133b4986959aedc653a
stephan [Tue, 1 Aug 2023 16:38:08 +0000 (16:38 +0000)]
Fix part 2 of 2 for /fiddle: a make deps problem which caused fiddle to load but fail to run when sqlite3.c was missing.
FossilOrigin-Name:
6011bc26764760af750de68f1553f45382766dd2195633ae267bdb4f9ac75d0f
stephan [Tue, 1 Aug 2023 16:17:00 +0000 (16:17 +0000)]
Fix part 1 of 2 for /fiddle not running: build flags which were renamed during refactoring.
FossilOrigin-Name:
214ffeeff77997c3352d30aaa6e51e2dea9706f0d08f73f4eacfad1864817fc6
dan [Tue, 1 Aug 2023 11:03:06 +0000 (11:03 +0000)]
Fix an assert() in fts5_index.c that might fail when dealing with corrupt records.
FossilOrigin-Name:
aa55c83f35c2ab134e0842201e46e021079283f9c65595c86664060b3aa8d715
drh [Tue, 1 Aug 2023 01:07:45 +0000 (01:07 +0000)]
drh [Tue, 1 Aug 2023 00:34:03 +0000 (00:34 +0000)]
Restore part of the UPDATE one-pass optimization that was removed by
check-in [
2c56b984a0bd3be5 ]: only disable one-pass if the WHERE clause
contains a subquery. Allow subqueries in the SET expressions.
Fix for performance problem reported by
[forum:/forumpost/
8ab195fd44e75ed0 |forum post
8ab195fd44e75ed0 ].
FossilOrigin-Name:
42916af9fc0f379a608a08db894400bd735a28e26ab1ffd604d1fddfbdb3ec0c
drh [Mon, 31 Jul 2023 22:03:24 +0000 (22:03 +0000)]
Restrict the new column cache to table-btree, which is the common case anyhow.
That way, writes to indexes do not need to clear the column cache.
FossilOrigin-Name:
659284ab0e22a4746c1337b3489e7b166d497fb7e5301e24dc115d2b0c4e097d
drh [Mon, 31 Jul 2023 20:02:11 +0000 (20:02 +0000)]
The original column-cache implementation from check-in [
ab1edcc7fedcf279 ]
(merged to trunk at [
771fe35074b50b8d ]) is unsound. This check-in fixes
the issue. Had to give back a little performance, the optimization is still
a overall win.
FossilOrigin-Name:
ec95e970fb737adf0fab3cb4363040b036949e5eb966fc2d030a20f95e2bde60
drh [Mon, 31 Jul 2023 17:39:36 +0000 (17:39 +0000)]
Add bit to sqlite3_test_control(SQLITE_TESTCTRL_OPTIMIZATIONS) that will
disable the one-pass optimizating in DELETE and UPDATE.
FossilOrigin-Name:
22f6dd5cd32ed9e7b932fdba98aa8652fde999df79f4995d3d8ac1acf430cf53
drh [Mon, 31 Jul 2023 17:20:12 +0000 (17:20 +0000)]
Improved debug tracking of the Parse.nQueryLoop value.
FossilOrigin-Name:
4a8a17498ecaccca5e5aab65d4596cbca9799547f50683237d08c1fa3556f1cf
stephan [Sun, 30 Jul 2023 03:54:10 +0000 (03:54 +0000)]
Add tests for SAHPoolUtil.exportFile() and importDb().
FossilOrigin-Name:
4aa88b8fb1c99137ed7531e5c82a241738a2b0554f7af82c0ed0ce8d16a0879a
drh [Sat, 29 Jul 2023 22:58:47 +0000 (22:58 +0000)]
Do not try to add MEM_Term to an MEM_Static string either.
FossilOrigin-Name:
8920dcef1f75f578e3f274ab2b980a83d6ea6b761d99fc48410b26886170597b
drh [Sat, 29 Jul 2023 21:22:26 +0000 (21:22 +0000)]
Do not try to apply MEM_Term to a MEM_Ephem strings.
FossilOrigin-Name:
2a378a66783ce4d749f7e1e7d08d8404a4aa78d47aeeefd6794b6753188438f6
dan [Sat, 29 Jul 2023 20:13:19 +0000 (20:13 +0000)]
Fix a buffer overread in the fts5_structure virtual table (test code).
FossilOrigin-Name:
b837aff79cd159061b46af59eaf96a1a1920eeece27e9e27931cf3387068d96a
drh [Sat, 29 Jul 2023 17:05:35 +0000 (17:05 +0000)]
Simplification to the sqlite3_stmt_explain() implementation.
FossilOrigin-Name:
dd5eb4c7f71c658aff8c2f11ff163c5e79f0ebfd49fd13ca8e28381fe63cc82f
stephan [Sat, 29 Jul 2023 15:53:53 +0000 (15:53 +0000)]
SAHPoolUtil.importDb() now accepts either a byte array or ArrayBuffer.
FossilOrigin-Name:
3848f04e542e2f0f8975e82632af598aac3b60312bd244b0472f7ddf1dda77df
drh [Sat, 29 Jul 2023 15:31:48 +0000 (15:31 +0000)]
Enhancements to the new sqlite3_stmt_explain() interface implementation and
documentation.
FossilOrigin-Name:
dc98ac6b6de27fc096a715e650067154a545709cf1eecd6c2722ab30a91c2d1d
larrybr [Fri, 28 Jul 2023 21:38:50 +0000 (21:38 +0000)]
Fix doc error noted in [forum:/forumpost/
11fc7308d5e607f2 |the forum] and a misspelling.
FossilOrigin-Name:
6b79cc7dd07d41da6034386b39c0dff32f80a977db42a9602330ffd15706ab9b
drh [Fri, 28 Jul 2023 20:59:25 +0000 (20:59 +0000)]
Do not allow the same JSON parse to be input to both arguments to the
json_patch() routine.
FossilOrigin-Name:
8e781c6742792b3899ca60efc49c7eaee1df9f6b03d27c254b0e148b82946e19
drh [Fri, 28 Jul 2023 19:07:25 +0000 (19:07 +0000)]
Merge the latest trunk enhancements into the wal-shm-exceptions branch.
FossilOrigin-Name:
c44fb4d06591ef4872f015aa9e81ce8b93a38bd9143cf20db38cbe5c77a0d71f
drh [Fri, 28 Jul 2023 18:52:09 +0000 (18:52 +0000)]
Merge the latest trunk enhancements into the bedrock branch.
FossilOrigin-Name:
1d6ded3234bbfa3226ef718eec8d0ce06ae2844628866cb6197383c9bf06267c
drh [Fri, 28 Jul 2023 18:47:49 +0000 (18:47 +0000)]
Merge the latest trunk enhancements into the wal2 branch.
FossilOrigin-Name:
c1fa1cb5e0c420614481636f3ce2dd9ad2142274bb7b37d39e5c26228317f992
drh [Fri, 28 Jul 2023 18:37:13 +0000 (18:37 +0000)]
drh [Fri, 28 Jul 2023 16:12:39 +0000 (16:12 +0000)]
Minor tweaks to the JSON performance measurement documentation.
FossilOrigin-Name:
0bed957e46aa3bf6a70292ae100de0459486c1469dd03de61207a708cc59a594
drh [Fri, 28 Jul 2023 14:20:31 +0000 (14:20 +0000)]
Enhancements to the JSON performance testing scripts and instructions to
cover the recent optimizations involving updates to large JSON strings
that indexed.
FossilOrigin-Name:
f9213289d09adfb0461d9644e80c7e889f4bae51563ae2e575a2c95336052bcb
drh [Fri, 28 Jul 2023 13:52:08 +0000 (13:52 +0000)]
JSON performance improvements: (1) Add a cache for large string values
on OP_Column to avoid having to extract the string multiple times.
(2) Internal JSON caching improvements.
FossilOrigin-Name:
771fe35074b50b8d4a6583e61c53871b2445f7a58c82f3fc3bf6776e562e63af
stephan [Fri, 28 Jul 2023 11:52:58 +0000 (11:52 +0000)]
Correct a recently-introduced falsehood in ext/wasm/README.md regarding ssh port forwarding.
FossilOrigin-Name:
2a3f3a9cf28849c99d83c256f813405a2f47f84532e1192d67bb7aa655dd98a3
drh [Fri, 28 Jul 2023 11:30:07 +0000 (11:30 +0000)]
drh [Fri, 28 Jul 2023 00:54:38 +0000 (00:54 +0000)]
Remove some unnecessary and incorrect code that was mistakenly added in the
previous check-in.
FossilOrigin-Name:
d3f458dcc379dd7648262f52579ec55ba931852065ed278367a0629228d0ed45
drh [Thu, 27 Jul 2023 23:51:36 +0000 (23:51 +0000)]
Switch to using jsonParseCached() for json_patch().
FossilOrigin-Name:
2ed9c59e6a51037e63485d0a92dae25443116beddfca1ac73d2f5d5be38d4ad3
drh [Thu, 27 Jul 2023 20:28:29 +0000 (20:28 +0000)]
If the input JSON to a json function that uses cache comes from an RCStr
value, then use that RCStr value in the parse rather than making a copy.
FossilOrigin-Name:
509ae9c1470dd79d320e84371e1e6662fb85fa0571df5ed8c4d946d10cdfe821
dan [Thu, 27 Jul 2023 20:08:44 +0000 (20:08 +0000)]
Fix a couple of compiler warnings in fts5_index.c.
FossilOrigin-Name:
bf71faa2a1d29ea762c4d2485522d6f4f8a5a7166981a92d3ba9c96ccbbe1213
drh [Thu, 27 Jul 2023 19:39:53 +0000 (19:39 +0000)]
The OP_Column opcode caches large column values coming from overflow pages.
FossilOrigin-Name:
ab1edcc7fedcf27922d5db4bc1bc673b1495ca9c66eb6debdda7b7776c068888
dan [Thu, 27 Jul 2023 19:13:35 +0000 (19:13 +0000)]
Add the contentless_delete=1 option to fts5. For creating contentless tables that support DELETE and REPLACE statements.
FossilOrigin-Name:
d66b182d2bc6ce0772e69401b7affe1adbc1b128c4631cb3c17f98dde72af00a
drh [Thu, 27 Jul 2023 18:19:46 +0000 (18:19 +0000)]
Merge trunk enhancements into the json-opt branch.
FossilOrigin-Name:
5739a16ad270a5aadcbb46b28c34fa6ba975422788dcbccb1a8e0d1e6ed75144
stephan [Thu, 27 Jul 2023 17:50:10 +0000 (17:50 +0000)]
Dynamically determine whether the wasm.xWrap() argc check can be applied, depending on how the wasm environment exposes its exports.
FossilOrigin-Name:
fd59226b34fffb1479fb2d7bd7c0aff982aa4a1a73e6c0d81de6eaf9c075998c
stephan [Thu, 27 Jul 2023 01:38:19 +0000 (01:38 +0000)]
Accommodate a breaking change in emcc 3.1.44.
FossilOrigin-Name:
2c5dd34199f5bcf729be814b8b46d9997821fe3a39ab12779c93df1bb2fd108d
drh [Thu, 27 Jul 2023 00:21:59 +0000 (00:21 +0000)]
Fix a performance regression in JSON associated with generating small
snippets of JSON from a larger JSON string.
FossilOrigin-Name:
837f2907e10b026f6db1ca2d44b4bf60a6f069bf534bf369ad9b5c513cb0c6e4
drh [Wed, 26 Jul 2023 23:22:32 +0000 (23:22 +0000)]
Reduce the number of memory allocations when parsing JSON.
FossilOrigin-Name:
9edd67162113df57dae21d4683f9495611e2cf4717c6d12f5b7b8e44156d5fe3
drh [Wed, 26 Jul 2023 21:53:09 +0000 (21:53 +0000)]
Minor changes to make coverage testing easier.
FossilOrigin-Name:
ec8b43382e5402e15d9f2dda3cf21ac8be8c1589ddbe6c9433c33eef0036f764
drh [Wed, 26 Jul 2023 19:22:43 +0000 (19:22 +0000)]
Change a switch() case to default for coverage.
FossilOrigin-Name:
04f497074b9210326030f36107a43d6490a2a59c8a574e2c5429cd9bde681bf7
drh [Wed, 26 Jul 2023 19:11:47 +0000 (19:11 +0000)]
Make sure jsonReplaceNode() always leaves the JsonParse in a consistent state even if an error is encountered.
FossilOrigin-Name:
01d52232dd6fbd253e77419a17df3df83d49434792d288ef96e14739a89cef3b
dan [Wed, 26 Jul 2023 18:34:34 +0000 (18:34 +0000)]
Add a comment describing the contents of the ExceptionInformation[] array for win32 EXCEPTION_IN_PAGE_ERROR exceptions. No changes to code.
FossilOrigin-Name:
8e20354242d5f34a90b6c00d9034535ef6f6086ee4971230c7fd69985e2777d2
dan [Wed, 26 Jul 2023 17:51:05 +0000 (17:51 +0000)]
Add the ".scanstats vm" command to the shell tool. For profiling VM code in SQLITE_ENABLE_STMT_SCANSTATUS builds.
FossilOrigin-Name:
0cbec3990d4101142bfb831f8e6527b73baabebbd30fa7f59275b217dbce6a8d
dan [Wed, 26 Jul 2023 16:41:23 +0000 (16:41 +0000)]
Improve the output when ".scanstats vm" is enabled.
FossilOrigin-Name:
7df08fd35e9d4bc471aa9fbc4c81d2ebcfd2be6c4c38143342b3d9d727c9df22
drh [Wed, 26 Jul 2023 14:18:06 +0000 (14:18 +0000)]
drh [Wed, 26 Jul 2023 13:17:43 +0000 (13:17 +0000)]
Change the debugging "json_parse(X)" function so that it shows a more
complete description of the JsonParse object on standard output and returns
the mimified JSON. Former behavior was to return the text of a decode
of the aNode array.
FossilOrigin-Name:
1bf85d4e388714a88f8940dcdec353c3e0267456697eff6963d34637912aecc9
drh [Wed, 26 Jul 2023 11:53:14 +0000 (11:53 +0000)]
More comment improvements in json.c. Do not run jsonLookup() following
an OOM error.
FossilOrigin-Name:
cd5fda8c2e354da7458b7c1a82ff18c5946f8dab16095bb0293bec57f6804f17
drh [Wed, 26 Jul 2023 11:43:39 +0000 (11:43 +0000)]
Improved comments and other cleanup for the changes on this branch.
FossilOrigin-Name:
bac953a80d1a541e7a12aef00c86c002133859237143ad670b39ea19799a8900
stephan [Wed, 26 Jul 2023 11:41:41 +0000 (11:41 +0000)]
Remove the batch SQL runner from the JS build's 'all' target, as it's long-since unused and adds noticable build time. Add makefile comments about JSPI.
FossilOrigin-Name:
b8f708e35d4fa027d12089ac7c5589c36da5f68b98cf9792bb11276bf233a860
stephan [Wed, 26 Jul 2023 11:11:39 +0000 (11:11 +0000)]
Add SAHPoolUtil.getFileNames() method, and tests for it, per [forum:
a3da1e34d8 |forum feedback]. Add a test to demonstrate that two SAH pools can coexist so long as they have different names.
FossilOrigin-Name:
72dc3f8c3255186ec412412b685b0b51ddcd08240f2353ac742fc7da8c23568e
drh [Wed, 26 Jul 2023 11:00:47 +0000 (11:00 +0000)]
Fix jsonForceRCStr() to also add the NULL terminator.
FossilOrigin-Name:
134b01f37f8f741d7f7b7eda81384695d1cbe4c39751d87f08832d5c9afdcef2
stephan [Wed, 26 Jul 2023 07:57:55 +0000 (07:57 +0000)]
Reformulate [
907dfc4a7aa1 ] using awk instead of sed for better cross-platform portability.
FossilOrigin-Name:
82ff7cc6a4b0331677be87bc069da414a56fd531bae402d0f0808b5d2b0d45da