]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Tue, 20 Sep 2022 14:36:53 +0000 (14:36 +0000)]
When compiled with SQLITE_OS_KV_OPTIONAL, the magic names ":localStorage:"
and ":sessionStorage:" are recognized and converted to use the kv-vfs.
FossilOrigin-Name:
c5db9262d0388ccb0e84c6a4b4e2e786dd634f13874e4034ba7b175befa4ce90
drh [Sat, 17 Sep 2022 18:31:31 +0000 (18:31 +0000)]
Fix an uninitialized variable in the decoder kv-vfs.
FossilOrigin-Name:
354726aa6c399053785f29104de15091629ce4bc275b9e2205cb3656a9e81cd7
drh [Sat, 17 Sep 2022 18:29:49 +0000 (18:29 +0000)]
Include the kv-vfs as an optional VFS on unix builds if the
SQLITE_OS_KV_OPTIONAL compile-time option is present.
FossilOrigin-Name:
852812d1e2ec3c53ad7c6c64662b37d861fefcf1baeee3d58eba88bcb3f6d8df
drh [Sat, 17 Sep 2022 17:26:44 +0000 (17:26 +0000)]
Merge the latest trunk enhancements into the kv-vfs branch.
FossilOrigin-Name:
37c7ca25a6e837e7f83b96a32e2b1a455730e48a48012c458ae2e734a3ccdd1f
drh [Fri, 16 Sep 2022 15:19:04 +0000 (15:19 +0000)]
Corrections to the xRead method for databases in the os_kv.c VFS so that it
correctly reads the header, and thus avoids unnecessary cache flushes. This
changes also includes an optimization to the header read logic.
FossilOrigin-Name:
ef54961ce69fddb4cfeeff0860288de2858a6f7a5aa396691e8e99933eb9af54
drh [Fri, 16 Sep 2022 11:37:01 +0000 (11:37 +0000)]
Fix os_kv.c so that it uses SQLITE_FCNTL_SYNC and hence
works even with PRAGMA synchronous=OFF.
FossilOrigin-Name:
21915af560b111aeeaee751790356151a5f063c2fc703dd4b35b22dc393409fb
stephan [Fri, 16 Sep 2022 01:08:06 +0000 (01:08 +0000)]
stephan [Mon, 12 Sep 2022 20:21:34 +0000 (20:21 +0000)]
Remove an extraneous key-copy op in the EM_JS impl of kvstorageDelete().
FossilOrigin-Name:
1c5aeee45564c14e7e2e7730f3f52106339ea3148fb5aa786fa767a35db46f51
drh [Mon, 12 Sep 2022 19:33:20 +0000 (19:33 +0000)]
Fix the <sys/time.h> include in os_kv.c.
FossilOrigin-Name:
878cc93e779c3857adc711f212520f007256274fcd3f6f3d72c754a937fcd198
drh [Mon, 12 Sep 2022 19:29:34 +0000 (19:29 +0000)]
Add a gettimeofday()-based implementation of xCurrentTimeInt64() to os_kv.c.
FossilOrigin-Name:
e393ed650ef124143f84e9d787fb996e308dd7af6b8f50df72a6f085b67bf9c3
drh [Mon, 12 Sep 2022 18:10:41 +0000 (18:10 +0000)]
Fix a debugging/testing edit in the previous check-in.
FossilOrigin-Name:
6fc8d34c0ae1f8277544be741f2f0835fad8e475d35bd24573224ccc1699b8bd
drh [Mon, 12 Sep 2022 17:44:35 +0000 (17:44 +0000)]
drh [Mon, 12 Sep 2022 16:07:24 +0000 (16:07 +0000)]
New run-time options to the speed-check.sh script.
FossilOrigin-Name:
ff46bc9d2a844dde9dafa157114f4d9ee157205ca5c08ed9ee32f018de310e62
drh [Mon, 12 Sep 2022 15:59:35 +0000 (15:59 +0000)]
Fix uninitialized variable in rollback-journal processing in os_kv.c
FossilOrigin-Name:
e49682c5eac91958f143e639c5656ca54560d14f5805d514bf4aa0c206e63844
stephan [Mon, 12 Sep 2022 13:05:54 +0000 (13:05 +0000)]
Resolve missing kvvfs JS test: sqlite3_initialize() must be called by the client in this build. Add basic sanity test of kvvfs using sessionStorage().
FossilOrigin-Name:
250a935aeb94d3fadec0d3fe22de85de4e658e2fdb3be3aa9a8bbc8f7b7d8414
drh [Mon, 12 Sep 2022 12:41:07 +0000 (12:41 +0000)]
Fix the amalgamation so that it builds with the standard unix backend again.
FossilOrigin-Name:
0adf158f4e5791339988185cc29347c75056b062e0db65b5999fdfa1f433c1ed
stephan [Mon, 12 Sep 2022 12:39:28 +0000 (12:39 +0000)]
Initial build of kvvfs in wasm. It loads but cannot find the VFS for as-yet-unknown reasons (sqlite3 shell works fine), and most APIs throw "null function or function signature mismatch" from deep within wasm, presumably as a side effect of the "missing" VFS.
FossilOrigin-Name:
1a2f24a0bdfc6eaae478916b8f4f9c6b63ead9964534fc2951fb4e995ffe61f1
drh [Sat, 10 Sep 2022 18:38:21 +0000 (18:38 +0000)]
Improved comments in os_kv.c. Better names for the key/value name spaces.
FossilOrigin-Name:
8e1652a3856765c9146cc2a7e3b598a2dc7dc84c556b35eab9a35184514384b9
drh [Sat, 10 Sep 2022 18:20:59 +0000 (18:20 +0000)]
Move the vfskv.c extension to src/os_kv.c and make it part of the amalgamation,
activated if and only if SQLITE_OS_KV is true.
FossilOrigin-Name:
f6632e69c2ec1a7ddc4e51f3567e3bc082ee94a6dd51fdafdc0c3bf386a32d4c
mistachkin [Fri, 9 Sep 2022 17:50:29 +0000 (17:50 +0000)]
Fix harmless compiler warning seen with MSVC.
FossilOrigin-Name:
73c4c68d3b4c16caf8281dabddd7365d24691e5ee2da89b1783eca66bfbd9280
drh [Fri, 9 Sep 2022 16:16:33 +0000 (16:16 +0000)]
Database must be named either "local" or "session". Each has a distinct
namespace.
FossilOrigin-Name:
c8e41279294ea7c2f041c7d4cbbd85fce47d55f2f56180ca837316f7dfd75237
drh [Fri, 9 Sep 2022 14:22:41 +0000 (14:22 +0000)]
Separate sqlite3_io_methods objects for database files and journals.
FossilOrigin-Name:
74fbf6c2a97729e481d5562344e960d0c237aeb1f07240262d32a24fb1f4b5a3
drh [Fri, 9 Sep 2022 11:41:54 +0000 (11:41 +0000)]
drh [Thu, 8 Sep 2022 17:12:12 +0000 (17:12 +0000)]
Compiles and loads as an extension. Starts to run but quickly hits issues.
FossilOrigin-Name:
2e38726f46918b28b5c638967f960a20afd3fe84ad245f3bea39a1d64980435b
drh [Thu, 8 Sep 2022 16:27:50 +0000 (16:27 +0000)]
drh [Thu, 8 Sep 2022 15:48:01 +0000 (15:48 +0000)]
Code snapshot. Completely untested. Probably does not compile.
FossilOrigin-Name:
51e267696d25f2f83b5bb847d5254ab15573ef1a16ea3d7dd8279c73c0bee539
drh [Wed, 7 Sep 2022 20:11:22 +0000 (20:11 +0000)]
Enhance an assert() to impose for tighter constraints on the operation of pcache.
FossilOrigin-Name:
42105eb43a916a7cd839fa6c582eaffaef17f50b23c3e05142400c379feb73c7
drh [Wed, 7 Sep 2022 19:28:18 +0000 (19:28 +0000)]
An improved technique for ensuring that the Rekey() operation does not
overwrite an existing page number. This approach does not change the
semantics of the underlying pluggable pcache and it is easier to prove
correct. This replaces the changes at
[
aadd38f99a3e5abc ] and [
81cff9f1955874aa ].
FossilOrigin-Name:
7dbddde79e3ca1b81e00288616fc27434698ce6dcb47714728fce8602ae91f45
drh [Wed, 7 Sep 2022 17:29:22 +0000 (17:29 +0000)]
Non-working code towards a VFS for text key/value storage.
FossilOrigin-Name:
f9c89ee8d5ef46342bea78fa8d4da058d9ea628183ec985642bbda1cdfeacd5f
drh [Mon, 5 Sep 2022 22:54:36 +0000 (22:54 +0000)]
Add the tool/omittest-msvc.tcl script that will try to build using MSVC
using various compile-time options, to ensure that the compile-time options
all build without errors.
FossilOrigin-Name:
6b00ecb59fd303f7985902c35a46db9e729201d4beaedea46596b728d9e4b1c8
drh [Mon, 5 Sep 2022 22:53:24 +0000 (22:53 +0000)]
Get the tool/omittest-msvc.tcl script working.
FossilOrigin-Name:
82b89f8a074858a81d841dfc26436e8d39ce4907b8f989eba4d848db16758303
drh [Mon, 5 Sep 2022 20:42:01 +0000 (20:42 +0000)]
Add a prototype for a script, similar to tool/omittest.tcl, that is designed
to test builds using MSVC to ensure they work with various OMIT options.
FossilOrigin-Name:
b1e37a0bd31fa9f8e58c2859a80c23a682b4702eefab2c55b243f1e21d475d6c
drh [Mon, 5 Sep 2022 18:17:03 +0000 (18:17 +0000)]
Fix the windows build so that it works with -DSQLITE_OMIT_AUTOINIT.
FossilOrigin-Name:
f74a5ea8c986dc33d3afcda169c38abbe55728c56716cf9991a5e2ef7fc4917a
dan [Fri, 2 Sep 2022 21:19:24 +0000 (21:19 +0000)]
Ensure the Pager.journalOff variable is zeroed if an error occurs while writing the initial header to the journal file.
FossilOrigin-Name:
da7af290960ab8a04a1f55cdc5eeac36b47fa194edf67f0a05daa4b7f2a4071c
drh [Fri, 2 Sep 2022 17:25:25 +0000 (17:25 +0000)]
drh [Fri, 2 Sep 2022 15:09:55 +0000 (15:09 +0000)]
If sqlite3PcacheMove() really performs a swap, then be sure to renumber the
second page.
FossilOrigin-Name:
81cff9f1955874aade55daa94263f58f06d966bd51ad558755f92777069a7347
drh [Fri, 2 Sep 2022 14:29:54 +0000 (14:29 +0000)]
Enhance the pcache1 implementation so that during an xRekey operation if
another page already exists at the destination, that other page gets moved
to the source key.
FossilOrigin-Name:
aadd38f99a3e5abcf9bef49f4367752f163cc79500a28f812bb71969d7de419c
drh [Fri, 2 Sep 2022 11:45:26 +0000 (11:45 +0000)]
Mutex protect access to the sqlite3_test_directory and sqlite3_data_directory
global variables. See
[forum:/forumpost/
719a11e1314d1c70 |forum thread
719a11e1314d1c70 ].
FossilOrigin-Name:
8e6ad3a3e942a326cf16432e16d6596c7206c05b6f45cd0ff3a9b836bcfc9deb
drh [Fri, 2 Sep 2022 11:12:16 +0000 (11:12 +0000)]
Improved mutex protection of the sqlite3_temp_directory and
sqlite3_data_directory global variables.
FossilOrigin-Name:
ebbe9634d6dde9e097f61fb98a79111e46de422b7bbbd9ed3af7b6f22aacf5ec
drh [Fri, 2 Sep 2022 00:36:16 +0000 (00:36 +0000)]
Experimental changes to put sqlite3_temp_directory behind a mutex.
FossilOrigin-Name:
5ee3515fbb88bf1ae5f8b507844f82dcc429380b6ebeab9b09b52b25ee60a60d
drh [Thu, 1 Sep 2022 13:51:09 +0000 (13:51 +0000)]
Defer deleting a transient SELECT statement associated with a flattening
of one arm of a compound SELECT until after the parse has completed.
FossilOrigin-Name:
1c4157c71cd1e062a9c2c79787d17e34e340f28ce1e40573851dfe174f5da7d7
drh [Thu, 1 Sep 2022 10:29:02 +0000 (10:29 +0000)]
In the query planner, add a heuristic that will reduce the cost of a full
table scan for a materialized view or subquery if the full scan is the
outer-most loop. This is shown to speed up some queries.
FossilOrigin-Name:
609fbb94b8f01d6792e5941ab23ce041313d359f6788c4dde6b1ca749ab49137
drh [Wed, 31 Aug 2022 15:04:42 +0000 (15:04 +0000)]
Enhance the b-tree page sorting code to ensure that sqlite3PagerRekey() never
overloads a page number and uses only the PENDING_BYTE page for temporary
storage.
FossilOrigin-Name:
5007742886bd20de20be3973737cf46b010359911615eb3da69cd262bd9a2435
drh [Tue, 30 Aug 2022 16:54:41 +0000 (16:54 +0000)]
Improved comments in pcache1.c. No changes to code.
FossilOrigin-Name:
dd017bb1b3e31c7692d29dc4865d6bda871e429978c8738a39160d0114e5bf9b
drh [Tue, 30 Aug 2022 00:11:51 +0000 (00:11 +0000)]
Any function call can abort. Take this into account when deciding if a DML
statement needs a statement journal. See
[forum:/forumpost/
9b9e4716c0d7bbd1 |forum thread
9b9e4716c0d7bbd1 ] for more
information.
FossilOrigin-Name:
5c95ae6c9b93b9bcf698bb1cad93b2da2e28121b35e7c539b1ddc0ef2de33cfe
drh [Sat, 27 Aug 2022 16:11:00 +0000 (16:11 +0000)]
drh [Sat, 27 Aug 2022 14:43:34 +0000 (14:43 +0000)]
Ensure that every pcache page always has either the PGHDR_DIRTY or the
PGHDR_CLEAN bit set, even during transient page reshuffling during btree
balancing.
FossilOrigin-Name:
e67f03c166277951725c194674c84da61c152a5820aa6df55a726f7dda838e92
drh [Thu, 25 Aug 2022 19:29:35 +0000 (19:29 +0000)]
Ensure that sqlite3_prepare() inputs always have a semicolon terminator in
speedtest1.
FossilOrigin-Name:
c72756b0f2db30c622f00f43be9245d50e36049bd7740ee6332164f0c48f9c3d
drh [Thu, 25 Aug 2022 19:19:25 +0000 (19:19 +0000)]
dan [Thu, 25 Aug 2022 13:32:55 +0000 (13:32 +0000)]
Remove a NEVER() macro for a condition that is actually reachable following an OOM. dbsqlfuzz crash-
6ef3cd3b18ccc5de86120950a0498641acd90a33 .txt.
FossilOrigin-Name:
b573e2cffa5fedc893ed30e76e47022b3617ac5583e1eb486afa810b2514c419
drh [Wed, 24 Aug 2022 17:59:00 +0000 (17:59 +0000)]
Add a mutex to the sqlite3_db_config() interface so that it is threadsafe
when two or more threads call it on the same database connection at the same
time.
FossilOrigin-Name:
459ad8846ee1ee2d3b277a291c47121692bdf477e779b06e77be8338f62237a6
dan [Wed, 24 Aug 2022 11:51:31 +0000 (11:51 +0000)]
Fix an inefficiency in the ".dump" command when outputing large blob literals.
FossilOrigin-Name:
c055d05dbdfd4643d5052c6e6a736c78651fdfcd78f15f791af903df3814832d
drh [Tue, 23 Aug 2022 20:11:01 +0000 (20:11 +0000)]
Change the names of the Vdbe.pVNext and Vdbe.ppVPrev fields to make them
unique. Change to ppVPrev to save a few bytes and a few CPU cycles.
FossilOrigin-Name:
34b8ea31877ae8b40729d37b3f51ae7e15f38be841881ea4a37c9c8f0a52896d
drh [Tue, 23 Aug 2022 17:51:39 +0000 (17:51 +0000)]
Enhance assert() statements to enforce tighter bounds on the P5 operand of
the OP_Next and OP_Prev opcodes.
FossilOrigin-Name:
4e0a07fc6f96e6e7726506b7a5ee942461c1381501f253893fa94d76023b634f
stephan [Tue, 23 Aug 2022 16:55:19 +0000 (16:55 +0000)]
Add mksourceid binary to the clean rules and $(TESTPROGS) to distclean.
FossilOrigin-Name:
ae3e82f5a3332bea261aca6a0dd02063cf7056c023204cc10f1ae18d75249f91
drh [Mon, 22 Aug 2022 15:18:37 +0000 (15:18 +0000)]
Performance enhancement for sqlite3DbFree().
FossilOrigin-Name:
c296a9d958ec360fc8d217363348b4918d665bccb3c4f27503a2dcef7db49052
drh [Mon, 22 Aug 2022 02:00:26 +0000 (02:00 +0000)]
Add the new internal interface sqlite3DbNNFreeNN(db,ptr) where both the
db and ptr parameters are guaranteed to be non-NULL. Use this where
appropriate to save more than 2 million CPU cycles on the standard
performance test.
FossilOrigin-Name:
e5eaa80e81fdf86f2875a912b880272b8d099b82b08e945a7988c5dd0fe9d6b5
drh [Sat, 20 Aug 2022 19:45:41 +0000 (19:45 +0000)]
Merge the test case for dbsqlfuzz
18fe4e257be7fa3ecfb0424ab7427e41e97ef9e3
assertion fault, which is fixed with the previous check-in.
FossilOrigin-Name:
2d13ec086e96a5446462ce0f689c40c8196e740cd693f5967bfe9eb961f03463
drh [Sat, 20 Aug 2022 19:33:04 +0000 (19:33 +0000)]
Enhance the enforcement of SQLITE_VTAB_DIRECTONLY so that it applies to
DML statements within triggers. Do not allow DML stratements against
virtual tables within triggers unless either the virtual table is
SQLITE_VTAB_INNOCUOUS or PRAGMA trusted_schema is ON.
FossilOrigin-Name:
9433ea4070f52135be64569057f439e7bdb4b3f425d87167c9ebda50011210c1
dan [Fri, 19 Aug 2022 20:10:51 +0000 (20:10 +0000)]
drh [Wed, 17 Aug 2022 20:18:34 +0000 (20:18 +0000)]
In the ".dump" command of the CLI, if a schema statement ends with an
unterminated comment, try to terminate that comment prior to appending
the ";" at the end. [forum:/forumpost/
d7be961c5c |Forum post
d7be961c5c ].
FossilOrigin-Name:
96e112da1ac56767cf49f26132833745b6020d2c60f5c36f86ca84f87ad30c81
drh [Wed, 17 Aug 2022 18:07:52 +0000 (18:07 +0000)]
Enhance the "PRAGMA integrity_check" statement so that it verifies the rows of
a WITHOUT ROWID table are in the correct order.
FossilOrigin-Name:
62f934bff495850d0763e07ffa44a557f066ecba9d039363f32287213cba819f
drh [Wed, 17 Aug 2022 17:14:36 +0000 (17:14 +0000)]
Minor code simplification in the code generator for PRAGMA integrity check.
FossilOrigin-Name:
a3b9c7a6c9be5c78a93e5125f16237d2d84b977eca81f527af0198e96435a995
drh [Tue, 16 Aug 2022 17:18:00 +0000 (17:18 +0000)]
Change the legacy RC4-based PRNG to use the RFC-7539 chacha20 algorithm.
FossilOrigin-Name:
a0f801151925e882e120f6ab685dcacb9d3268d25b52bc665c5b927bcc7dda1e
drh [Tue, 16 Aug 2022 16:57:33 +0000 (16:57 +0000)]
Fix obsolete comments. Add new comments. Fix non-standard spacing.
FossilOrigin-Name:
a0d224c6a69941dad1f2b35edcc7ddee343b99eae2aeed74043461f3e97ef5b4
drh [Tue, 16 Aug 2022 16:40:54 +0000 (16:40 +0000)]
Fix an off-by-one error in the ChaCha20 initialization code.
FossilOrigin-Name:
72e220eed446ea9a02a6ef03e09a01bcb8bbca1f3b32d2e0bf52a17d9722e2f0
drh [Tue, 16 Aug 2022 14:09:51 +0000 (14:09 +0000)]
Omit an unnecessary test case from corruptN.test that does not work with the
new RFC-7539 PRNG.
FossilOrigin-Name:
d9e8c65ed25c4f6222c737f4244d5362dbe433d357f7d133765157446cf4e925
dan [Tue, 16 Aug 2022 10:52:35 +0000 (10:52 +0000)]
Add assert() statements to verify that the SQLITE_OPEN_EXCLUSIVE flag is always passed to the VFS when opening a temporary file.
FossilOrigin-Name:
e123da49ccae61d591abded52f4721aa10f20d75935c9a3e3fe826a9b8df2317
drh [Tue, 16 Aug 2022 00:04:40 +0000 (00:04 +0000)]
Replace the RC4-based PRNG with one based on ChaCha20. 3x faster.
FossilOrigin-Name:
084d8776fa95c75440530028171c56547a341c9a952ba2f29bb533b538603c78
dan [Mon, 15 Aug 2022 19:23:15 +0000 (19:23 +0000)]
drh [Mon, 15 Aug 2022 18:36:08 +0000 (18:36 +0000)]
The new --script option to dbtotxt.c looks for an SQL script at the head of
the file and generates a CLI script that will construct the database then run
the SQL.
FossilOrigin-Name:
6170e638ebeb12cc40c3247324237978401f701afc270de88ad03e183e82cefc
drh [Mon, 15 Aug 2022 12:26:26 +0000 (12:26 +0000)]
In the documentation emphasize that the use of shared cache is discouraged.
Fix test cases so that they all work with shared cache disabled.
FossilOrigin-Name:
52c3ae063e133c5f88cad2c3084cf46218f865ac817ab937e3529d2c6a7af300
drh [Fri, 12 Aug 2022 18:46:01 +0000 (18:46 +0000)]
Add the (undocumented) SQLITE_DEFAULT_UNIX_VFS compile-time option.
FossilOrigin-Name:
49828bdec5f926cd18a069d39a5db0b1e1f3528a2affcfbaa1cf7b98aca51b3b
stephan [Fri, 12 Aug 2022 17:55:18 +0000 (17:55 +0000)]
Minor wasm-related doc clarification and remove an obsolete code comment.
FossilOrigin-Name:
1b1f650a08da93da97ed3a96b9a3e4eac567472c266188c02a9bffe1cf620e53
stephan [Fri, 12 Aug 2022 13:07:21 +0000 (13:07 +0000)]
wasm: document the role of sqlite3-wasm.c. Other minor doc updates.
FossilOrigin-Name:
4c10b9b18feca82440273f8192fef951ad051bbfd8aad4d3c840cf6375130afd
stephan [Fri, 12 Aug 2022 09:32:51 +0000 (09:32 +0000)]
wasm: corrected (in as-yet unused code) a flags check.
FossilOrigin-Name:
06b6113783dd81252a5dd125e1cddb52a9d4e387c74cfb3ba88475e47a31060a
stephan [Thu, 11 Aug 2022 15:45:32 +0000 (15:45 +0000)]
stephan [Thu, 11 Aug 2022 09:18:09 +0000 (09:18 +0000)]
Merge in wasm-cleanups branch, reorganizing and updating the wasm-related components.
FossilOrigin-Name:
c072594d3de3d6893c5d4a9d68439b84d043325f105b0d065575765a6e66c196
drh [Wed, 10 Aug 2022 18:40:43 +0000 (18:40 +0000)]
Fix another harmless comment typo that causes a typo in the documentation.
FossilOrigin-Name:
bb084adb53386d8e52ca1e818a8322d2ec641b73fd8568cee01cc74c0ee9f265
drh [Wed, 10 Aug 2022 18:33:57 +0000 (18:33 +0000)]
Remove (harmless) duplicate words in comments used to generate parts of the
documentation. [forum:/forumpost/
54abbe9ccd |forum post
54abbe9ccd ]
FossilOrigin-Name:
b5e4f0db09ff7790862357df3c6fd38a2dcdfc82ff51b9f0d9470517648c844d
dan [Wed, 10 Aug 2022 15:29:21 +0000 (15:29 +0000)]
Fix handling of columns with names that are SQL keywords in the ".expert" command.
FossilOrigin-Name:
5e1b8221c385deb04a3ff5aafb2e9fc55aecc6ffc68328674e3afe56c4273e29
stephan [Wed, 10 Aug 2022 13:22:44 +0000 (13:22 +0000)]
wasm opfs: error handling fix for an impossible-to-reach error case. Minor cosmetic tweaks in the wasm JSON enum.
FossilOrigin-Name:
683a3b937e608a5ecaf7f63f054e8a63179d67c8b2348bf843e5e68f27a369f5
stephan [Wed, 10 Aug 2022 11:26:08 +0000 (11:26 +0000)]
wasm refactoring part 2 of (apparently) 2: moved ext/fiddle/... into ext/wasm and restructured the core API-related parts of the JS/WASM considerably.
FossilOrigin-Name:
27f9da4eaaff39d1d58e9ffef7ddccf1e41b3726914f754b920e3e1fb572cba6
stephan [Wed, 10 Aug 2022 09:36:10 +0000 (09:36 +0000)]
wasm/fiddle refactoring part 1 of N: move fiddle app from ext/fiddle to ext/wasm/fiddle, which only contains files intended to be pushed to the live site. Disabled build of the non-fiddle wasm parts, pending a later step of the refactoring.
FossilOrigin-Name:
fb4eb93080288b60815be14afd7ddbbca470ce363fa3735352ea9a558fef583e
stephan [Wed, 10 Aug 2022 07:58:57 +0000 (07:58 +0000)]
Merged in trunk for pending tree refactoring.
FossilOrigin-Name:
c3a3cb0103126210692bbeb703e7b8793974042e1fc2473be6d0a0d9b07d5770
drh [Tue, 9 Aug 2022 16:13:21 +0000 (16:13 +0000)]
Allow the name of an index to collide with a table in a different schema.
FossilOrigin-Name:
f963c2523872b59b8a7a14971f703f2eb0d021501b288597a958f6596885d0de
drh [Tue, 9 Aug 2022 14:28:54 +0000 (14:28 +0000)]
Omit the (undocumented) SQLITE_PCACHE_SEPARATE_HEADER compile-time option.
FossilOrigin-Name:
60947da687d525e72e62bcddcdf4c5c819818855074cc318c9ee656e83897aef
dan [Mon, 8 Aug 2022 19:29:53 +0000 (19:29 +0000)]
Avoid some cases of signed integer overflow in fts5 by casting to unsigned values.
FossilOrigin-Name:
46a78c8c0ed518c4521e6e0bdebeb065bab07076abc444775002e7f4361d2242
drh [Mon, 8 Aug 2022 16:25:13 +0000 (16:25 +0000)]
Avoid trying to cast an over-sized floating point value into an integer.
FossilOrigin-Name:
3518cd7cb1feeefc3963da72c2d258d81d8914f1e1f427da28a00b6228cf126c
drh [Mon, 8 Aug 2022 13:04:08 +0000 (13:04 +0000)]
Remove an unreachable branch in the numericType() helper routine.
FossilOrigin-Name:
a99cc008e46ab1a4fdbe2fa87202d026a10c57be55e3e9fedd935795ed6dc694
drh [Mon, 8 Aug 2022 12:19:13 +0000 (12:19 +0000)]
Do not attempt to convert an oversized floating point value into an integer.
FossilOrigin-Name:
6c4fc8385ee22516e0b87fb647327ee7d1a564040ebe2a4d66fc999ef2908df2
dan [Sat, 6 Aug 2022 15:28:37 +0000 (15:28 +0000)]
Fix a rounding error caused by scalar->logarithm->scalar conversion when using stat4 data to estimate some range scans.
FossilOrigin-Name:
86e30d7c4bb1cebe25b66686d6d1ee170c1a88e5a6c1bed6652ebbb024d62062
dan [Fri, 5 Aug 2022 17:16:00 +0000 (17:16 +0000)]
Avoid having fts3 read uninitialized values when processing deferred tokens.
FossilOrigin-Name:
98729c5fa6c4c418ca9779c35e6874c930e5cee5a90b5eb32b284a0f3762269e
mistachkin [Fri, 5 Aug 2022 05:30:07 +0000 (05:30 +0000)]
Fix harmless compiler warning seen with MSVC.
FossilOrigin-Name:
e36217f2536d89f7a15a879fe3ead32307909c71ced42e1ae7b35f43d4744a80
drh [Thu, 4 Aug 2022 17:15:00 +0000 (17:15 +0000)]
Fix a problem with the query optimizer for LIMIT/OFFSET queries when
underlying query is a UNION ALL and both arms of the UNION ALL are
subqueries with an ORDER BY clause. This bug was reported at
[forum:/forumpost/
6b5e9188f0657616 |forum post
6b5e9188f0657616 ]. The
problem was introduced in 2015 (SQLite version 3.9.0) by check-in
[
4b631364354068af ]. See also ticket [
b65cb2c8d91f6685 ].
FossilOrigin-Name:
6c806f64bbc9e98891bad0868575ee2ec5d0951ceb0c71d3ed417b45d5f27561
drh [Thu, 4 Aug 2022 14:02:35 +0000 (14:02 +0000)]
Fix a typo on a comment used to generate bytecode documentation.
FossilOrigin-Name:
64348d0b665f61c3a89f51341f23ca87f939dd9e306dc58c2004e46ab04e696e
drh [Wed, 3 Aug 2022 19:53:54 +0000 (19:53 +0000)]
Performance optimization to the math opcodes of the bytecode engine.
FossilOrigin-Name:
597347d9c39f6ed068ac942a8c9853b1b745fce1eb5e9dd30f6c1cb312b36f53
drh [Wed, 3 Aug 2022 19:37:25 +0000 (19:37 +0000)]
Small performance increase on the binding interfaces.
FossilOrigin-Name:
aab24c37fb444804fb91177b4b522909ef1bb85383444d97d82a758f919047d2
drh [Wed, 3 Aug 2022 17:26:32 +0000 (17:26 +0000)]
drh [Wed, 3 Aug 2022 15:58:44 +0000 (15:58 +0000)]
For an IN operator used with a RIGHT JOIN, use the number of terms in the
vector, not the number of equality terms, to size the column map.
dbsqlfuzz
14cfdad6ca45e607163f54049ddf5065183dc657 .
FossilOrigin-Name:
b184c8d9222da6b420b5d7c439bbe4b737d92ffa27f5e933f4e1a9c8117b0ee5