]>
git.ipfire.org Git - thirdparty/sqlite.git/log
dan [Thu, 7 May 2020 14:26:40 +0000 (14:26 +0000)]
Fix an error that could occur if the first transaction executed by a connection configured to use blocking locks is a write-transaction for which the WRITER lock cannot be obtained.
FossilOrigin-Name:
49e4dc72f7a4b28e4b49d7b91030bc986aea3ff44dac38cb6e68305800cd1de5
dan [Thu, 7 May 2020 14:05:08 +0000 (14:05 +0000)]
drh [Thu, 7 May 2020 01:56:57 +0000 (01:56 +0000)]
Fix the handling of reserve-bytes so that the maximum value of 255 can be used.
FossilOrigin-Name:
99749d4fd4930ccf15227f67c732266af9e09dd3cabdc0834fb450ef98196441
dan [Wed, 6 May 2020 21:25:39 +0000 (21:25 +0000)]
Avoid leaking a file-handle in test file walsetlk.test.
FossilOrigin-Name:
3cfc675e2e917b69108feb3a75728b573abe8e44f0890a7d20d307b0b6784c0e
dan [Wed, 6 May 2020 21:24:29 +0000 (21:24 +0000)]
Fix an assert() failure that could follow an IO error.
FossilOrigin-Name:
e89c864299024cdce395a15c19b000b976142b9eed267901a288adaa695f9e65
drh [Wed, 6 May 2020 20:55:38 +0000 (20:55 +0000)]
dan [Wed, 6 May 2020 20:45:11 +0000 (20:45 +0000)]
Fix a problem preventing building without SQLITE_ENABLE_SETLK_TIMEOUT defined.
FossilOrigin-Name:
98eb54c6d83992886f17a00b6fc8998df230e3b5f45bafc6fae0d15a9ee5a4c6
dan [Wed, 6 May 2020 20:27:18 +0000 (20:27 +0000)]
Add error code SQLITE_BUSY_TIMEOUT, used internally by the OS layer to indicate that a call to xShmLock() has failed due to timeout of a blocking lock.
FossilOrigin-Name:
f3ef9c7c2b4ba3de1057ad569f068b241d5f23e6629d8e0dacf85e57fd13b8aa
dan [Wed, 6 May 2020 19:22:59 +0000 (19:22 +0000)]
Fix compiler warnings in non-SQLITE_ENABLE_SETLK_TIMEOUT builds.
FossilOrigin-Name:
22de99ef410ba2a540871f3e61157d8dc4b969416f14808aeca73971b17fcd51
dan [Wed, 6 May 2020 19:14:41 +0000 (19:14 +0000)]
Block on the WRITER lock when attempting to run recovery.
FossilOrigin-Name:
105d6c9bbcadc64faa2b24e315cb13227b17cfc6bf1b3512713f80ce56976a3d
drh [Wed, 6 May 2020 18:43:57 +0000 (18:43 +0000)]
Provide the SQLITE_DEFAULT_LEGACY_ALTER_TABLE compile-time option.
FossilOrigin-Name:
63e659d9a793227604aa95685a8d83cd08305f1d01e135407a3ffc6d54482ab8
dan [Wed, 6 May 2020 17:18:57 +0000 (17:18 +0000)]
Add tests for running recovery when opening a write transaction or performing a checkpoint with blocking locks enabled. Fix some failing assert() statements.
FossilOrigin-Name:
d096ea3fe20f8af90f9e3f798fd0a69527b32ac8e208ade58b9d0af0e831f41b
dan [Wed, 6 May 2020 15:07:25 +0000 (15:07 +0000)]
Merge latest trunk changes into this branch.
FossilOrigin-Name:
a3727dba10b476f414f0a049b35f2a5c169a408eccefa6833821560684e07f8b
dan [Tue, 5 May 2020 20:30:07 +0000 (20:30 +0000)]
Unless upgrading an existing read transaction, have ENABLE_SETLK_TIMEOUT builds attempt to use a blocking lock when opening a write transaction on a wal mode database.
FossilOrigin-Name:
d6f819a9e6b35f3fd558bd93255a6a24ad690a0fa15a82b009ca9c641db983c6
drh [Tue, 5 May 2020 19:54:02 +0000 (19:54 +0000)]
The only known path to a corruption detection branch was cut off by the
previous commit implementing earlier index corruption. So make the branch
NEVER. Maybe a fuzzer will find a new path.
FossilOrigin-Name:
9a84d8eb44b12ddea921baa73ac3bffa8c8d23a852605dc1dbde37907360bd79
drh [Tue, 5 May 2020 18:42:49 +0000 (18:42 +0000)]
Earlier detection of index corruption caused by missing index entries.
FossilOrigin-Name:
f339f31f9e9a856b576f99c5230fdf6d60fdc2873e48cb5aa0a4ab1d04e3c930
drh [Tue, 5 May 2020 13:41:40 +0000 (13:41 +0000)]
drh [Mon, 4 May 2020 19:52:00 +0000 (19:52 +0000)]
dan [Mon, 4 May 2020 19:42:35 +0000 (19:42 +0000)]
Changes to avoid deadlock in SQLITE_ENABLE_SETLK_TIMEOUT builds.
FossilOrigin-Name:
553423c23142cf0ec219192315d57ce8a0e10c3d8678d28bc110a1a9a7c17cee
drh [Mon, 4 May 2020 19:04:23 +0000 (19:04 +0000)]
Minor change to the sqlite_stmt virtual table, for test coverage.
FossilOrigin-Name:
838987b2097c4b7acaa65aea99cfdaf199f04d76bcf6ef12743c60b338a965f7
drh [Mon, 4 May 2020 17:15:21 +0000 (17:15 +0000)]
Simplify the initialization of built-in extensions.
FossilOrigin-Name:
729f2397358d0382e255ba0058bf70bc9ed410b7621a67466da13de437d3ba5c
drh [Mon, 4 May 2020 11:47:38 +0000 (11:47 +0000)]
Ensure that the master-journal name is in a form suitable to be passed
into sqlite3_uri_parameter().
FossilOrigin-Name:
d1ba026d882f070b351280028e2fa88a3cca59b46d4683302e24c6677e0951b9
drh [Sat, 2 May 2020 04:08:23 +0000 (04:08 +0000)]
Add the SQLITE_FCNTL_CKPT_START file-control and use it to optimize
the cksumvfs extension.
FossilOrigin-Name:
efdecb13091316aeac2722f58577cb0314e008e857f2816a2a222bac0a83e9e1
drh [Sat, 2 May 2020 03:46:32 +0000 (03:46 +0000)]
Add support for PRAGMA analyze_limit and approximate analysis.
FossilOrigin-Name:
812547525d35df975f40cbbeb604cc9cd2dec809c1ca083cbb139fe59ffa1d73
drh [Sat, 2 May 2020 03:29:21 +0000 (03:29 +0000)]
drh [Sat, 2 May 2020 00:31:00 +0000 (00:31 +0000)]
Merge the bytecode and tables_used table-valued functions. Requires
-DSQLITE_ENABLE_BYTECODE_VTAB at compile-time.
FossilOrigin-Name:
d09bcce37f1eaf084e3b07eb4a23653ea1f370cdd290ce3875408186adf87022
drh [Sat, 2 May 2020 00:01:39 +0000 (00:01 +0000)]
Corner-case changes to the bytecode virtual table for testability and
correctness.
FossilOrigin-Name:
baa720e4a88f268ed95337daab5f434fd3263b00f09101cddc6424765bf3b722
drh [Fri, 1 May 2020 18:58:21 +0000 (18:58 +0000)]
drh [Fri, 1 May 2020 18:37:34 +0000 (18:37 +0000)]
Add the SQLITE_FCNTL_CKPT_START file-control. Use it to optimize the
cksumvfs extension.
FossilOrigin-Name:
b40f5aa344ae10cf4da83b3aa9e4866d6f6ffb06ba7e34ec1ce80c92468cf3bf
drh [Fri, 1 May 2020 15:04:13 +0000 (15:04 +0000)]
drh [Fri, 1 May 2020 13:45:12 +0000 (13:45 +0000)]
Clarification to the sqlite3_uri() family of interfaces. Documentation
enhancement only - no changes to code.
FossilOrigin-Name:
853703cd6d44d6dd48ef5eda6523e374b8ebdf7c338ddaad31c15a40a8b3fd9b
drh [Fri, 1 May 2020 13:32:19 +0000 (13:32 +0000)]
Update documentation for sqlite3_close_v2() for clarity. No functional
changes.
FossilOrigin-Name:
80498b69ea489e8816c80a52c9e55a62699116fcbfdcbfd922ef23c2d9938871
drh [Fri, 1 May 2020 11:31:43 +0000 (11:31 +0000)]
Add the new SQLITE_IOERR_DATA result code and use it in cksumvfs.
Also enhance cksumvfs to emit an sqlite3_log() message whenever it finds
an invalid checksum.
FossilOrigin-Name:
a094e8bfdef10d9e5d97f5a9f7c15b0fc547358b83367762ba5c2dfd2c9d0117
drh [Wed, 29 Apr 2020 01:09:46 +0000 (01:09 +0000)]
Do not allow page_size changes on an active cksumvfs database.
FossilOrigin-Name:
2c17cdce26fd935e6d81ff828f4670291fc014013c93b2a1578506598345ee86
drh [Tue, 28 Apr 2020 23:09:56 +0000 (23:09 +0000)]
Fix incorrect error message when something goes wrong with the
sqlite3_dbpage() table-valued function in the .dbinfo command of the CLI.
FossilOrigin-Name:
0dcf002463f5931c3875d2038d2b97298f1800b1cdfa70485d6430ab758f3b25
drh [Tue, 28 Apr 2020 20:47:40 +0000 (20:47 +0000)]
drh [Tue, 28 Apr 2020 14:01:31 +0000 (14:01 +0000)]
Use AtomicStore() when setting the mem0.nearlyFull boolean to avoid
harmless TSAN warnings and to forestall doubts about threadsafety.
FossilOrigin-Name:
ce980af65a9b528f112baa22a95020a98ac5340155a0b53b09c46f99aad9b12b
drh [Tue, 28 Apr 2020 11:45:41 +0000 (11:45 +0000)]
Use an AtomicLoad() macro in sqlite3HeapNearlyFull().
FossilOrigin-Name:
7556bc632e271d8a1e4fd836ce91e28213768ac09c90857b91171e9cd1009884
drh [Sun, 26 Apr 2020 22:04:48 +0000 (22:04 +0000)]
Yet another attempt to enhance sqlite3_load_extension() so that it works
with Window-style pathnames using a backslash separator character.
FossilOrigin-Name:
b73d9a7d6f7fec0ffc9640902a849289c305f8651e891388c01255c4da7a6c4b
drh [Sun, 26 Apr 2020 14:33:54 +0000 (14:33 +0000)]
drh [Sat, 25 Apr 2020 21:05:51 +0000 (21:05 +0000)]
Fix the sqlite3_load_extension() interface so that it tolerates backslashes
in place of forward-slashes in pathnames on Windows.
FossilOrigin-Name:
bc3bf7c6681a96bc18a1ed02f0ccced4731d5dab45f60c347dd1841706e6b62a
dan [Sat, 25 Apr 2020 15:01:53 +0000 (15:01 +0000)]
Ensure affinity is not discarded from a view column if the view appears on the rhs of a LEFT JOIN. Fix for [
45f4bf4e ].
FossilOrigin-Name:
ac31edd3eeafcef46164a4506bbc32c711bb7cd78378aeaa4c9bb12524ac5ea1
drh [Fri, 24 Apr 2020 18:20:30 +0000 (18:20 +0000)]
The new sqlite3_database_file_object() interface requires that the pager
never invoke xOpen with SQLITE_OPEN_MAIN_JOURNAL unless it is using
a pointer to the journal name found in the Pager structure itself. Make
this the case when processing a master-journal.
FossilOrigin-Name:
b4987a5ced0c0f2c606c040e0c1b8ee11175f40ae35a7446308a43e77b1f1db2
drh [Fri, 24 Apr 2020 17:55:52 +0000 (17:55 +0000)]
drh [Thu, 23 Apr 2020 20:45:46 +0000 (20:45 +0000)]
Fix an uninitialized variable in the newly enhanced ".output" command of
the CLI.
FossilOrigin-Name:
65c6c26bb48d5347ce53bb3607de3a03a5a03946b232d35e46a20533f86750f8
drh [Wed, 22 Apr 2020 13:49:25 +0000 (13:49 +0000)]
Fix an off-by-one error in the "calculated" page count output from the
sqlite3_analyzer utility for databases that are more than 1GB in size.
FossilOrigin-Name:
8789368b91fb5b7477bdba3a953412fc3839b4894443b65186f7b8f79f6369c9
dan [Wed, 22 Apr 2020 11:11:17 +0000 (11:11 +0000)]
Fix an integer overflow in fts3 causing a usan error.
FossilOrigin-Name:
e256f85289a78e629acdf83e5bf1f8df2a0ffb3d559738eb9e49db6c228dc8c0
drh [Wed, 22 Apr 2020 00:50:21 +0000 (00:50 +0000)]
Clarify the comment on the sqlite3BtreeGetRequestedReserve() routine.
No changes to code.
FossilOrigin-Name:
52a6acca6d5d376308d354c02f4d676d9375c34c3841d7b1941196ee8b4e2511
drh [Tue, 21 Apr 2020 20:19:25 +0000 (20:19 +0000)]
Add the sqlite3_database_file_object() interface.
FossilOrigin-Name:
f534ebeaaf34f825550138f09f9a40221dfa7cd5c6537ef9f86dce5249025ec3
drh [Tue, 21 Apr 2020 19:27:08 +0000 (19:27 +0000)]
Add the sqlite3_database_file_object() interface to sqlite3ext.h.
FossilOrigin-Name:
3cabe06b6e9433cbfb4bf7bd72a425f43b54f57d84a205adbaa6a1147bbe46bf
drh [Tue, 21 Apr 2020 01:06:35 +0000 (01:06 +0000)]
Experimental API: sqlite3_database_file_object().
FossilOrigin-Name:
ae697b152d22737169892411a0c4d908895ff5fb249cce9bdb1ba0bbe32806f0
drh [Mon, 20 Apr 2020 17:35:32 +0000 (17:35 +0000)]
Do not use O_NOFOLLOW when opening a directory just to call fsync() on
that directory.
FossilOrigin-Name:
2fc80ef16ce5878311ab88a0c64631813572ffbb71f75363b4619c9667e0926b
drh [Mon, 20 Apr 2020 16:21:30 +0000 (16:21 +0000)]
Enhance the ".filectrl" command in the CLI to support the --schema option.
FossilOrigin-Name:
698d40db58b76f4094687d46b5c6292702a62168054f9e6a70ee86650a6635f7
drh [Mon, 20 Apr 2020 15:18:43 +0000 (15:18 +0000)]
The SQLITE_TESTCTRL_RESERVE operator is removed. In its place is the
more generate SQLITE_FCNTL_RESERVE_BYTES which is an API and which can
operator on more than just the main schema.
FossilOrigin-Name:
abc1aad74f7b6a1e72fb09936239f2224aa942d16296c6a3de0b8daef4bc8471
drh [Mon, 20 Apr 2020 14:05:54 +0000 (14:05 +0000)]
Remove an obsolete comment. No changes to code.
FossilOrigin-Name:
4135cb024456288d9c85aef5fb572dbb591527dd33d9a60ca5946b712c269941
drh [Sat, 18 Apr 2020 14:12:00 +0000 (14:12 +0000)]
Add the --bom option to the ".excel", ".once", and ".output" commands
of the CLI. Also fix the "--all" option on ".help" so that it works with
two dashes in addition to just one.
FossilOrigin-Name:
d5b0def96ba6d90f47bc96fab1ccf9c501d84885d086744035b16fd96f3e248c
drh [Fri, 17 Apr 2020 23:46:54 +0000 (23:46 +0000)]
Fix the ".excel" command and the ".open -x" and ".open -e" command so that
they work better when running from an in-memory database and on Windows
and when running from a script.
FossilOrigin-Name:
07752164c2bf00b6885808533bbdb2cefbf1bf281a887b0b4f6316649a6cb810
dan [Thu, 16 Apr 2020 15:56:03 +0000 (15:56 +0000)]
dan [Thu, 16 Apr 2020 11:35:27 +0000 (11:35 +0000)]
Improve corruption detection in fts3 shadow tables earlier in order to prevent an assert() from failing.
FossilOrigin-Name:
a9ec8c8f80a59badabb0afdb4189f0fd2934f936530d4151de395b3a7e7c1f1f
drh [Wed, 15 Apr 2020 17:39:39 +0000 (17:39 +0000)]
Clarification of the byte-order determination for UTF16 inputs to routines
like sqlite3_bind_text16() and sqlite3_result_text16() and others that
accept UTF16 input strings.
FossilOrigin-Name:
a42fdcf54bcbd72a301dad4a040346dc48e67cacab43479ec618f5c32108c55f
drh [Tue, 14 Apr 2020 15:53:58 +0000 (15:53 +0000)]
Build the UINT collating sequence extension into the CLI.
FossilOrigin-Name:
2b8c6b035a276029850de02651712a5fd69f4dfee45083d24b9d1f998004829b
drh [Tue, 14 Apr 2020 15:48:55 +0000 (15:48 +0000)]
Add the UINT collating sequence extension. The implementation is copied out
of the "natsort" branch.
FossilOrigin-Name:
6f46c6e3e3c471ca864d7596e0211ee90316b784c8fe22c7ae177c9d29731dc7
mistachkin [Thu, 9 Apr 2020 15:31:22 +0000 (15:31 +0000)]
When compiling the shell for WinRT, avoid using Win32 APIs that are unavailable.
FossilOrigin-Name:
85d3dc8c50d8dbb8eac1956e8976e861d3b671e03355ca9257060fa3dca51cc4
drh [Thu, 9 Apr 2020 15:07:22 +0000 (15:07 +0000)]
Merge recent trunk enhancements into the bytecode-function branch.
FossilOrigin-Name:
7e6576ec00fde277c5c7abac264f7ec7e531de00c4e112bf733a07fe703fadcc
drh [Thu, 9 Apr 2020 15:01:09 +0000 (15:01 +0000)]
Merge trunk enhancements into the approximate-analyze branch.
FossilOrigin-Name:
17901ea6a1951b8c55671408841901c6660e3f8099378204f080b171a684d718
drh [Tue, 7 Apr 2020 15:07:11 +0000 (15:07 +0000)]
Limit LIKE/GLOB pattern length to 100 bytes (default is 50K) when running
dbsql cases in the fuzzcheck utility.
FossilOrigin-Name:
10306118e8591e727af477a1a15d136852d21170e645bd0e75f7c88346b037d7
drh [Tue, 7 Apr 2020 13:08:56 +0000 (13:08 +0000)]
Add the --spinner option to the fuzzcheck test program.
FossilOrigin-Name:
b1eae2686f03a6e20a49ca2b3a654b3019506d4941708ee3919c339cd093a57d
drh [Tue, 7 Apr 2020 01:18:23 +0000 (01:18 +0000)]
The ALTER TABLE fix of check-in [
7e5ad8e0ab7ee91a ] is no longer needed due
to the changes at check-in [
4cf8721f5ceb1fda ]. But, we keep the defense
in place as an assert() for extra safety.
FossilOrigin-Name:
230556e859536bbadf0daf8133a9a01ef4f03148b3296723e37bad66e3fc3d82
drh [Tue, 7 Apr 2020 00:54:09 +0000 (00:54 +0000)]
Remove dead code that was added during initial development of RENAME COLUMN
but never actually served a purpose.
FossilOrigin-Name:
c95c4cda4640f05d61b13b4e60494dec07d4483734fc41ffcce73fb5163cbb0d
drh [Mon, 6 Apr 2020 20:35:52 +0000 (20:35 +0000)]
Performance improvement in sqlite3ResolveExprNameList().
FossilOrigin-Name:
7e170e67f24c7cdef7e7ceac4e0b81a75382618e4abe9e604f3d7f6db9dc6396
drh [Mon, 6 Apr 2020 18:16:31 +0000 (18:16 +0000)]
Performance improvement for column name lookup.
FossilOrigin-Name:
1e4b6a93987cdfbf829e2ff35ef417c290625f2894ad11949e301af518f1fb44
dan [Mon, 6 Apr 2020 16:37:05 +0000 (16:37 +0000)]
When running ALTER TABLE, avoid adding some internally generated tokens to the token map to improve performance on schemas with nested views.
FossilOrigin-Name:
4cf8721f5ceb1fdaefdc355b3211f75c53c4cdf9d2582ca70fc96777a9b057c2
drh [Sat, 4 Apr 2020 11:58:22 +0000 (11:58 +0000)]
Remove a NEVER() that could be true in sqlite3MatchEName().
FossilOrigin-Name:
921448f0e24a3753374b32be9d7bf36a9ca5d8522eff9f0b51dc243f08652419
drh [Sat, 4 Apr 2020 00:15:54 +0000 (00:15 +0000)]
In the push-down optimization, do not substitute columns that have previously
been identified as being constant by the propagate-constants optimization.
Fix for ticket [
51166be0159fd2ce ]
FossilOrigin-Name:
70c44811d12f540d4ec1c29dedbe999cf79b82e326a8712ae2fa0725d6bd8a65
dan [Fri, 3 Apr 2020 19:37:14 +0000 (19:37 +0000)]
Avoid factoring out constant expressions on the LHS of an IN(...) operator, as the IN(...) operation may affect the affinity of these values.
FossilOrigin-Name:
98d56b4a34fddcbaecd953a045ae0270b4d78c1edf34cc73522fb4e12743af80
drh [Fri, 3 Apr 2020 16:11:32 +0000 (16:11 +0000)]
Add a test case to fuzzdata8.db for the recent Henry Liu bugs.
FossilOrigin-Name:
42b02454b146ca1b04c0a5321465326435fc5b995f5498d3b1cf69c558a20f95
drh [Fri, 3 Apr 2020 15:48:05 +0000 (15:48 +0000)]
drh [Fri, 3 Apr 2020 13:19:03 +0000 (13:19 +0000)]
In the event of a semantic error in an aggregate query, early-out the
resetAccumulator() function to prevent problems due to incomplete or
incorrect initialization of the AggInfo object.
Fix for ticket [
af4556bb5c285c08 ].
FossilOrigin-Name:
4a302b42c7bf5e11ddb5522ca999f74aba397d3a7eb91b1844bb02852f772441
dan [Fri, 3 Apr 2020 11:52:59 +0000 (11:52 +0000)]
Do not suppress errors when resolving references in an ORDER BY clause belonging to a compound SELECT within a view or trigger within ALTER TABLE. Fix for ticket [
a10a14e9b4ba2 ].
FossilOrigin-Name:
684293882c302600e112cf52553c19d84fdb31663d96e5dd7f8ac17dda00a026
dan [Fri, 3 Apr 2020 11:20:40 +0000 (11:20 +0000)]
Fix a case when a pointer might be used after being freed in the ALTER TABLE code. Fix for [
4722bdab08cb1 ].
FossilOrigin-Name:
d09f8c3621d5f7f8c6d99d7d82bcaa8421855b3f470bea2b26c858106382b906
drh [Thu, 2 Apr 2020 19:58:31 +0000 (19:58 +0000)]
Fix a minor problem with EXPLAIN QUERY PLAN for triggers.
FossilOrigin-Name:
6e11c03f84efa93b218b07e39b6b56b1d872639f39c18498ee54d8cd8364d4f5
drh [Thu, 2 Apr 2020 17:21:51 +0000 (17:21 +0000)]
drh [Thu, 2 Apr 2020 13:21:10 +0000 (13:21 +0000)]
Fix an obsolete comment in the parameter binding logic of the CLI.
No changes to code.
FossilOrigin-Name:
c9c735e201d7900d8c2b766463a6c90f547d9844352719dc650734e25e635fad
drh [Thu, 2 Apr 2020 13:08:54 +0000 (13:08 +0000)]
drh [Thu, 2 Apr 2020 12:53:17 +0000 (12:53 +0000)]
Add a missing #ifdef to avoid a harmless compiler warning.
FossilOrigin-Name:
cc54de354317ebc080d4d1ee25427b31a49c4a75e01cb5d9966f1aaeb2ad098d
drh [Thu, 2 Apr 2020 12:24:08 +0000 (12:24 +0000)]
drh [Wed, 1 Apr 2020 01:15:16 +0000 (01:15 +0000)]
drh [Tue, 31 Mar 2020 20:57:06 +0000 (20:57 +0000)]
Add "PRAGMA analysis_limit=N;" to limit the number of rows visited by
ANALYZE when N is positive. Positive N also disables collecting stat4.
FossilOrigin-Name:
a279b151c1623807774daf4975175c62ea252eefb71f9820ced6773769b392c5
drh [Tue, 31 Mar 2020 18:41:21 +0000 (18:41 +0000)]
dan [Mon, 30 Mar 2020 13:35:05 +0000 (13:35 +0000)]
Use __atomic_load_n() and __atomic_store_n() for a few more things where they are available.
FossilOrigin-Name:
a49f8ec552bede7da731e0571ccf49de1a30e7be3a5673150436c8b411ba6ffc
dan [Mon, 30 Mar 2020 11:17:37 +0000 (11:17 +0000)]
drh [Sat, 28 Mar 2020 19:02:39 +0000 (19:02 +0000)]
Enhancements to the SQLITE_ENABLE_SETLK_TIMEOUT compile-time option to avoid
rare deadlocks on recovery.
FossilOrigin-Name:
06885e9aa4e430d10f4b32105bcf405c65fd6f7b4cd451baf56fb4f12f408963
drh [Sat, 28 Mar 2020 12:01:25 +0000 (12:01 +0000)]
MSVC does not allow constant expressions as initializers for
constants with /fp:strict.
FossilOrigin-Name:
076658e5d21d9284448f41312b83a6c3d25394c2bfa088ef6cdfe1dc60277856
dan [Fri, 27 Mar 2020 17:23:17 +0000 (17:23 +0000)]
Modifications to the way blocking locks are used in SQLITE_ENABLE_SETLK_TIMEOUT builds so that multiple processes or threads may not deadlock when operating on a single database.
FossilOrigin-Name:
c516027d5fd876b7d0bf566435667d554db29ded30ad6fc1165caa4a93d015a0
drh [Thu, 26 Mar 2020 16:48:18 +0000 (16:48 +0000)]
Add the tables_used() table-valued function as a variation on bytecode().
FossilOrigin-Name:
6283c677d57220e54375a6463f453c6d068e042263558df16cff1055d1b0d3f5
drh [Thu, 26 Mar 2020 15:28:46 +0000 (15:28 +0000)]
drh [Thu, 26 Mar 2020 00:29:50 +0000 (00:29 +0000)]
Reinstate the optimization that converts "x IN (y)" into "x==y".
FossilOrigin-Name:
27936e6884e77093533719c7955a17f051cfb359872e51a6d1481152e6256443
drh [Wed, 25 Mar 2020 20:31:45 +0000 (20:31 +0000)]
For the LIKE pattern in the .dump command of the CLI, accept backslash as
an escape character.
FossilOrigin-Name:
029ceea612f5c7a1420939d8a772eefcc6f9550d24d57b52ae1729ea9d85fae9
drh [Wed, 25 Mar 2020 12:50:13 +0000 (12:50 +0000)]
Enhance the ".dump" command in the CLI so that it accepts multiple LIKE
pattern arguments and shows the union of all matching tables.
FossilOrigin-Name:
45fba3d7055f90f67005ca740687f060a2311db40c8f6a161bfea0424e6ebf6d
drh [Tue, 24 Mar 2020 18:41:58 +0000 (18:41 +0000)]