dan
a3a91dd5f1
Have the VFS in memdb.c return SQLITE_IOERR_NOMEM instead of SQLITE_NOMEM when an OOM error is encountered. This is required to get the pager module to handle such OOM errors correctly in some cases.
...
FossilOrigin-Name: 09c96b4c026746f285a8aef5199bd247ecca590095ee42dde4f4dfa4996ce0bd
2021-04-09 20:50:40 +00:00
dan
bfd6f1bcd5
Fix a use-after-free error that could occur when processing "SELECT aggregate(DISTINCT <expr>)..." queries.
...
FossilOrigin-Name: 0e4789860b81c31d3a6d1f9f8340042ce1d08a82bf6119c783fcab85180b1b63
2021-04-08 20:29:12 +00:00
drh
55938b5fa0
Remove an ALWAYS() that might be false under very unusual circumstances.
...
dbsqlfuzz 300261f469ace7ecc57ed32ea7b0de3ea9d7dbf. Test case in TH3.
FossilOrigin-Name: 466f508973e7adc983a4c9bd7c86b4d9269e3b990183fc7f95a50fe72b832ad0
2021-04-08 19:56:58 +00:00
dan
f5ea93b432
Handle the corruption fixed by the previous commit in a different way so as to also fix dbsqlfuzz crash 753de0a0ac5b25b18f1e4d41e650d3333cdc270c.
...
FossilOrigin-Name: cb27ce25095ab9b5acbe4bf010c7f6d8a71191c2f79b3bf3e63d8655b4fe0769
2021-04-08 19:39:00 +00:00
dan
1bae648b73
Handle a special case of corruption that can present if "PRAGMA writable_schema=1" is set. Fix for dbsqlfuzz test case 6229ad63de49e3ba0630aaf0058868f36008bcca.
...
FossilOrigin-Name: 58f36af2271517abafa9f4a46f2a5f97e66c001675c17868282197d599603d1b
2021-04-08 15:19:46 +00:00
drh
d4f7ec7663
Hardden the filter_over grammar rule against OOM faults.
...
dbsqlfuzz e47c54502a9c36778a5ed553199d5870e2ebd9f2
FossilOrigin-Name: f375f541efee520042be83548ad96dfa889e2c349eda5db7612ac2336dd4e4f9
2021-04-08 14:15:26 +00:00
drh
a77d52f63c
Remove an incorrect assert() from sqlite3EndTable().
...
dbsqlfuzz 4af45bcda779592449b1985433bca90b0e683b9b.
FossilOrigin-Name: 38a1085cbd5b6dd5f418efa15c6da05de781f794b8f3dad3f871c96019fed099
2021-04-08 13:52:11 +00:00
drh
6af2a728e4
Fix an obscure memory leak in FTS3. dbsqlfuzz 26a51001beeff35649d2e328b05ec06f93c577a5
...
FossilOrigin-Name: be7cd9ebb1ba360c60469073b2e526cb1cceea702e43fcc07f47b47986908c8f
2021-04-08 13:41:20 +00:00
drh
4ad9673d00
Do not allow the use of rowid for views and subqueries unless compiled
...
with -DSQLITE_ALLOW_ROWID_IN_VIEW.
FossilOrigin-Name: a2ddb89b206c13876d34c5f9e3db41cda72d6eb3fea31ffa8cc6daa1e1580e16
2021-04-07 18:17:53 +00:00
drh
a875b72d6b
Add the SQLITE_ALLOW_ROWID_IN_VIEW option to omitttest.tcl.
...
FossilOrigin-Name: 83b8e4c281c5295950fbf2330a45193b73054b0749b51a6c2c4fbc79a7a5f82d
2021-04-07 18:08:23 +00:00
drh
6e5020e8da
Also prohibit the use of rowid from a subquery. Add the
...
SQLITE_ALLOW_ROWID_IN_VIEW compile-time option to restore legacy behavior
in case somebody actually needs it.
FossilOrigin-Name: 14b1d56ef84b0e62b7f9c4e5f7f985ca10e770c8db59f54004ad892c2a2dcbfb
2021-04-07 15:45:01 +00:00
drh
252d582a35
Unnecessary local variable initialization to fix a harmless compiler warning.
...
FossilOrigin-Name: c22e47c77a35ebcd1fdfc0caea9119dd5e24e76d5fdd0f2ffbb58205a7242297
2021-04-07 13:20:34 +00:00
drh
e7e7481a29
In FTS3, if the xBegin method fails to start a transaction due to an OOM
...
error, then make sure that the virtual table is left in a consistent state.
dbsqlfuzz 85ef48423fda4eef79a551654445d8ef3537a590.
FossilOrigin-Name: dd553578333f49950a197fe894d02e08cce011c9ae1a7270604186af204dcf6d
2021-04-07 12:59:09 +00:00
drh
d6a33de77c
Fix an assert in the automatic-index constructor that can be false following
...
an OOM error. dbsqlfuzz ee04d66c627ed5b5301e0ce09e24db47e0f1544e.
FossilOrigin-Name: cc6463fe6d23febeea5171f9a1bcb1e5f980f7f44b7e85022d5fd8662b471160
2021-04-07 12:36:58 +00:00
drh
0781219fd2
Earlier detection of page 1 on the freelist (which is impossible) and
...
reporting of that as database corruption.
dbsqlfuzz 6fe6c504b320be5e3eed66896cb0db28bfb38a93.
FossilOrigin-Name: b1bf0d987578160f002035ff41ec7c82011288f1c0449414a4b3da39b20f871c
2021-04-07 12:21:35 +00:00
dan
755ed41f5a
Fix a possible crash that could occur when executing a drop column operation on a corrupt database schema.
...
FossilOrigin-Name: c337849416c588142a5066db3feb1716b7a9d02536bdb73cc9da7d162c0d5494
2021-04-07 12:02:30 +00:00
larrybr
6536c4f18e
Fix seg-fault upon appendvfs attempt to open non-existent file.
...
FossilOrigin-Name: 04f6439f4d9b9b1f717c3aa243a93585df7e7844c216fab5d15bebb050ab00b1
2021-04-07 09:31:32 +00:00
drh
204b634222
Do not apply the optimization that omits DISTINCT if all result terms are
...
part of a UNIQUE index if the index is also a partial index.
Fix for the bug reported by
[forum:/forumpost/66954e9ece|forum post 66954e9ece].
FossilOrigin-Name: c2f940b02883e165172a4ca21c7095ffbef84ddc5367853dfeca93fda20d6056
2021-04-06 23:29:41 +00:00
drh
a74364ae13
Detect OOM earlier in the geopoly extension.
...
dbsqlfuzz 0986e7b020e6137fc6b96331f91d15753d18e42d.
FossilOrigin-Name: 7237117595a3519717a0a4b03eb427c6ec55b214e7ecd6d0f63a613adec355d4
2021-04-06 22:56:28 +00:00
dan
cc26301ec3
Modify the drop column code to handle WITHOUT ROWID tables for which a single column appears more than once in the primary key.
...
FossilOrigin-Name: e0d2507021c5a04016c442f954b542c0920678737ae7c710eb8ac50d6337db1c
2021-04-06 21:20:39 +00:00
drh
a6c54def42
Raise an error if a query tries to access the "rowid" of a view, as views
...
do not have rowids.
FossilOrigin-Name: 7a73c6166bb1d9f2e2de280fa4e973db152caaf6cc76b8e6a92cfe9560ddc224
2021-04-06 19:13:44 +00:00
dan
5a9fd231ea
Restructure a loop in window.c to avoid hitting an assert() following an OOM. dbsqlfuzz test case 6ef74a9659de87e9be3d8694ad062c448aa7ef1d.
...
FossilOrigin-Name: 887c19a15ba60a5dc375dda7e289d476ba24d4adb38086a013df9709b88f32a7
2021-04-06 18:40:27 +00:00
dan
112501fec2
Update an assert statement that could fail when using "PRAGMA writable_schema = 1" to access a database with a corrupt schema.
...
FossilOrigin-Name: 55cad6f628a4313c6652b36474c3397f097ac5c2503ae94605c030a54dc40916
2021-04-06 18:02:17 +00:00
dan
d73ade7d87
Fix issue with failing --enable-debug --enable-fts5 build.
...
FossilOrigin-Name: e7491acc0c93b7b0b5a27130d956bb23f876b90ced11cdd416a86727af076ee1
2021-04-06 17:51:18 +00:00
drh
4ffaffe657
New test cases added to fuzzdata8.db.
...
FossilOrigin-Name: 039ad662dd899048da04238c05b8cf384323f6e8c1087b96428ea9e20726c8c0
2021-04-06 16:55:30 +00:00
dan
11fbee24b6
Silence an msan warning triggered by a corrupt database by initializing a local variable in sqlite3Insert().
...
FossilOrigin-Name: f64deecee1691cf21b4f3d27d8490ecc8eae65cf26df7a22f8d15317f0cecd5b
2021-04-06 16:42:05 +00:00
dan
d4b646997a
Avoid a use-after-free that may occur when accessing a corrupt database schema with "PRAGMA writable_schema = 1" set.
...
FossilOrigin-Name: a1d823f6879ce1acfd251de35ffdfdf5ce7d8e0552205c2c4a1fee179e3a6972
2021-04-06 16:16:15 +00:00
dan
f22c590bab
Remove some test routines from release builds of fts5.
...
FossilOrigin-Name: 3088bf15ca53fac3bad94f241e648836631b6d801d42837c238ff27d85074ca4
2021-04-06 14:46:50 +00:00
dan
1408bf176e
Fix incorrect RETURNING test cases in wherelimit.test
...
FossilOrigin-Name: 20d21ff9be558c5f7773efa4efba7d36752f56c9a0caf1fd9c601aab5562dcef
2021-04-06 13:57:23 +00:00
drh
d22ecfd38c
Earlier detection of OOM errors during window function processing.
...
dbsqlfuzz b08676f5a0437552c95d2a5d7ef285f8c451ea35.
FossilOrigin-Name: 8e04f52e32c9655b703ab0a6dc6d57e6bd134db9e7168807b7b2ce81974f9274
2021-04-06 13:56:46 +00:00
dan
2a1aeaa36e
Handle "RETURNING rowid" clauses attached to INSERTs on views without causing an assert() to fail. Fixes dbsqlfuzz crash 0081f863d7b2002045ac2361879fc80dfebb98f1.
...
FossilOrigin-Name: 9c5b7386d013a7f22a93c69722c4648e2ab60eef180f48b5470bfea6fa74b3da
2021-04-06 13:53:10 +00:00
drh
8119aab3c8
Further improvements (subsequent to [d91450847a3a3a72]) to handling of attempts
...
to delete a journal using the memdb VFS.
dbsqlfuzz ac61dab357279a6a531de067f040e9a4828d2df0.
FossilOrigin-Name: a0839406426a0d8ec52cc3116ea7d8b582344b44f3f8c9365bbf5187370c3386
2021-04-06 13:03:06 +00:00
drh
4c4a25727f
Earlier detection and handling of OOM problems.
...
dbsqlfuzz 39f2963ea5559aa3a16e24e0e3cb42aac85a7371.
FossilOrigin-Name: 8d46df73132e46abb32b9dc129b6beb978d34dac3d372fb004ca283b0832d04c
2021-04-06 12:50:24 +00:00
drh
e0cc26734e
Relax an assertion on the sqlite3WhereEnd() routine after dbsqlfuzz found
...
a counter-example.
FossilOrigin-Name: e6b591e76523034c41884b39d71d4b721f1df709bdafd842e2d4b4084c158ec0
2021-04-05 22:42:15 +00:00
drh
9ce612a66f
Add a missing CORRUPT_DB to an assert in the OP_ResultRow opcode.
...
FossilOrigin-Name: 82f92d79e1901911b0ce57d0aa30d462847748159443c7db8af16e6b37e8212c
2021-04-05 22:30:56 +00:00
drh
7ac08e8be6
Adjust the README.md file so that build instructions work for Fossil version
...
2.12 and later. [forum:/forumpost/51f28bb701|Forum post 51f28bb701].
FossilOrigin-Name: 51f87adc7f90935484eadad82f751f1df8c1607d463dae9589a71aeda2184b3a
2021-04-05 19:23:18 +00:00
dan
6b6ec407ab
Do not allow floating point rounding errors to cause a window function xInverse() function to be invoked before the corresponding xStep() call.
...
FossilOrigin-Name: 7a19fed4f222bc6c20e13a1367c8235916d21ba5e6f5a31cd26842efe748e744
2021-04-05 19:05:18 +00:00
drh
e3814ee026
Fix an assert() that can be false when doing an incremental vacuum on a
...
corrupt database file. dbsqlfuzz cced0668cfd4da4eb2382cb9dd26c17c64aaff76.
FossilOrigin-Name: 15b801016fa204b8e4b7c89e236adb73dd57687959d825664de5097370b24030
2021-04-05 17:50:38 +00:00
dan
240e36c0e3
Avoid coding unindexed WHERE constraints if an equivalent transitive term has already been coded by an outer loop.
...
FossilOrigin-Name: 644bb77f8bb2c3499db7c280440c92fd2649a98ce714ae0d5d690eabfdc04326
2021-04-05 16:20:59 +00:00
drh
d5e7fff2ca
Do not invoke the xDelete method when converting to PRAGMA journal_mode=OFF
...
if the underlying VFS does not support that method.
dbsqlfuzz 39d6af88ef5242f866c4f9b21ede330c5c1e36a8.
FossilOrigin-Name: d91450847a3a3a7217f8f5947adea9a4d12cf77607d40f9724d6ba093919b524
2021-04-05 13:41:42 +00:00
drh
2389048f29
As a continuation of [1f66a85b7757754f], ensure that an OOM that occurs
...
while checking the validity of the schema is reported out as SQLITE_NOMEM
and not as SQLITE_SCHEMA.
FossilOrigin-Name: 5045c8a748f0065638d0ff4f6e3ccd124183fbc518cb9b0418d125b04dbc1491
2021-04-05 11:39:55 +00:00
drh
319deefdb9
Fix an assert() in sqlite3BtreeLast() that needs an "|| CORRUPT_DB" term.
...
Dbsqlfuzz case b92b72e4de80b5140c30ab71372ca719b8feb618.
FossilOrigin-Name: ad718388a1f6e25ceba43a40160fac0d9d9d3f26888e98d7b9db478c0b1780be
2021-04-04 23:56:15 +00:00
larrybr
b0e62b0a21
Avoid compile error when SQLITE_OMIT_VIRTUALTABLE defined.
...
FossilOrigin-Name: 0ee0ef476ba9e17794c088a1347a136df3eb1ef864da884cfe81e3b2e94e9719
2021-04-04 14:22:02 +00:00
larrybr
dabada6020
Make shell .parameter feature type-agnostic. Hush harmless compiler warning.
...
FossilOrigin-Name: 35cf295e026d067c9f059fde6b150e65163fe171d37501eb1e5742e691793340
2021-04-04 12:52:58 +00:00
drh
57f90189a5
Improved robustness to OOM conditions in the window function logic.
...
dbsqlfuzz 0c123f7d80b29beaafc8411c12129e46f7ffdac3.
FossilOrigin-Name: 35ff7cbf547d41109b7cd4217a5439b3b4a1a4c310309c572c88f596fbc1b099
2021-04-03 23:30:33 +00:00
drh
ad3930be46
Take care not to change an SQLITE_NOMEM error into SQLITE_SCHEMA.
...
FossilOrigin-Name: 1f66a85b7757754ff9aa0a626f66250c5fabc5fc8ab67bbc4b2ae8e6d9231a72
2021-04-03 20:35:08 +00:00
dan
f330d53ff3
Fix a crash in handling queries of the form "SELECT aggregate(DISTINCT tbl.col) FROM ... LEFT JOIN tbl ...". Fixes a problem introduced by [ef4ac0ddd297bbd3].
...
FossilOrigin-Name: 0dcf808ddf23da834da724d88b1715ed06565f1f1290713ff42a3fcf6ffb802e
2021-04-03 19:23:59 +00:00
drh
9af69ff547
Correctly capture the error when a RETURNING clause appears on an
...
attempt to UPDATE an eponymous virtual table.
dbsqlfuzz 486f791cbe2dc45839310073e71367a1d8ad22dd.
FossilOrigin-Name: 778a9a6e6f8d960fd55ac9be7eea20b1875a46192db85e63dddc61b632b30173
2021-04-02 20:43:26 +00:00
dan
aecc04d642
Add experimental SQLITE_FCNTL_EXTERNAL_READER file control.
...
FossilOrigin-Name: e16da5af822ef31d7e05992403cf9787fbb3d9abb0b5283aba55ea07e1830a72
2021-04-02 19:55:48 +00:00
drh
ec435c40ed
Fix a problem with the geopoly_bbox() function.
...
FossilOrigin-Name: f3a2eb979f1003e8249e613b34afd345f157c0d54b4f05ea0db230ef70e71351
2021-04-02 18:59:13 +00:00
drh
22af584e3e
When resolving names in the RETURNING clause, do not accept trigger names
...
even within subquires. See
[forum:/info/34c81d83c9177f46|forum post 34c81d83c9177f46] for context.
FossilOrigin-Name: fd4ea3f626b6e4957d56c2369be711895735cfc37cfde65650a6682ad5a3eb1a
2021-03-31 23:56:55 +00:00
drh
d75aeee535
When resolving column names in the RETURNING clause, do not ignore an
...
incorrect table name qualifier. Raise an error instead.
See [forum:forumpost/85aef8bc01|forum post 85aef8bc01] for context.
FossilOrigin-Name: 51d5c50b2fb373e4c7ddb7e26657c26ad39dc9c2fc629bba5c2522b4150d8fac
2021-03-31 17:42:24 +00:00
drh
b3ad4e6118
Defer deletion of expressions that are optimized out by the AND optimizer
...
in the sqlite3ExprAnd() routine until the corresponding Parse object is
deleted. This avoids a dangling pointer in AggInfo if sqlite3ExprAnd()
is invoked by the push-down optimization. The dangling pointer appears
to be harmless in release builds, only showing up in debug builds.
Problem found by dbsqlfuzz.
FossilOrigin-Name: c36b43589abd9f62a709bdb47b8748e0c1e8743487a3d83d1eb35eb06b65d763
2021-03-31 13:31:33 +00:00
dan
b03786ad6e
Ensure that negative numbers may not be used in frame offset clauses even if they are initially text value. e.g. (RANGE BETWEEN '-1' PRECEDING ...).
...
FossilOrigin-Name: 8b681b274dd01c3e0f76d5bbddcbb2450c6d9475b9cfa0db961a3ab5edf51db1
2021-03-31 11:31:19 +00:00
drh
0d23f678b1
Raise an error if a term of the form "TABLE.*" appears in the RETURNING clause,
...
as SQLite does not (yet) know how to handle that.
Ticket [132994c8b1063bfb].
FossilOrigin-Name: 3039bcaff95bb5d096c80b5eefdaeda6abd1d1337e829f32fd28a968f663f481
2021-03-30 01:52:21 +00:00
dan
28a314e74d
Do not do the EXISTS-to-IN transformation if the sub-select has LIMIT clause.
...
FossilOrigin-Name: d07e246f9b6d4d7aef63a6debcb7ab2832bff6f80a245f50bcebb3f8de1bacc7
2021-03-29 20:28:27 +00:00
dan
acbae3ba10
Add "#ifdef SQLITE_DEBUG" blocks around test variables sqlite3_fts5_may_be_corrupt and sqlite3_fts3_may_be_corrupt.
...
FossilOrigin-Name: 004559544e661f9afa60306c4ac6842c29a8630b3663d62aa0cdc637f176932e
2021-03-29 20:04:31 +00:00
drh
269b7d09bd
Simplify the comparison opcodes in the bytecode engine, for a performance
...
improvement.
FossilOrigin-Name: f2af5868be83c65dbc593dafd4357fdb7d5d740128e9225dd1b2de16947012b3
2021-03-29 20:01:04 +00:00
drh
529df929de
Fix VDBE coverage macros.
...
FossilOrigin-Name: ebe100de55ccdf6abccde5d8e6e96099b6e8dc3527f1441265e2b86b6661a66b
2021-03-29 19:47:39 +00:00
drh
4bc20452b5
Omit the SQLITE_STOREP2 and SQLITE_KEEPNULL options from the comparison
...
opcodes, allowing them to run faster. This required refactoring the
vector comparison logic, which in turn required changing OP_ElseNotEq into
OP_ElseEq.
FossilOrigin-Name: 380b46054b6a9b67e57357815e8e94057253fa3cce838ae76e5d5031c6bd26b2
2021-03-29 18:53:47 +00:00
drh
871e7ff43d
Add the OP_ZeroOrNull opcode and use it to compute boolean values for
...
scalar comparisons, rather than the SQLITE_STOREP2 parameter to the comparison
opcode.
FossilOrigin-Name: 93781b6f10a94fb273204b95156a8b90e07071f28c89e7966c659a0f44f60e98
2021-03-29 14:40:48 +00:00
drh
1f97d2618b
The comparison opcodes (ex: OP_Eq) now set the iCompare flag so that the
...
result of comparison can be used by subsequent OP_Jump or OP_ElseNotEq
opcodes.
FossilOrigin-Name: bd00df8f07b7163b0712590d2bb517e838a36c994dc47d7b39b5a07d14e6e6af
2021-03-29 13:47:20 +00:00
drh
1af3fd562f
Alternative implementation of the comparison opcode speed-up of
...
check-in [4a8805d9a66dc888] that should pass muster with UBSAN.
FossilOrigin-Name: afb18f64541effaeaada2d72c7c91adfe5ec3e2b1418c0bc281083125fb5badb
2021-03-28 23:37:56 +00:00
drh
9cffb0ffb9
Document the "%token" directive for Lemon. This directive has been in place
...
for a while, but was previously undocumented.
FossilOrigin-Name: 36624d3740a8d095eee061bcc5037deabddb88a53444ec1a956a8af7684efa43
2021-03-28 20:44:01 +00:00
drh
5e23ae500b
For the sqlite3_bind_text16 TCL binding used for testing, ensure that there
...
are at least 3 terminating zeros, so that there will always be a \u0000
character even if the original byte sequence is an odd number of bytes.
FossilOrigin-Name: c23d092f37c535f88a47e9f55aa7b2fd40cfd5c50eec9191a68073d7f9141ecd
2021-03-27 16:21:34 +00:00
drh
639ae98c63
In the sqlite3_bind_text and sqlite3_bind_text16 TCL commands of the test
...
suite, ensure that the string is zero-terminated if the size argument is
negative.
FossilOrigin-Name: f472fd64434cb2eac169587faa34bec489bc82002d529bc72dbfbba5251e5517
2021-03-26 23:59:37 +00:00
drh
126aab142e
Remove old testcases() macros. Also remove surplus end-of-line whitespace.
...
FossilOrigin-Name: 54b41915ed8ef993b4116b2de00f3f4bba7570a1d28ad6bb93ba158a6b89eff3
2021-03-24 23:30:06 +00:00
drh
9be1339faf
Comment improvements to on the distinct-agg optimization. Show a line in
...
the EQP output when using an ephemeral table to implement DISTINCT on an
aggregate.
FossilOrigin-Name: 037ca79e6032ca962b4f6182187bc12a7d91170d73630c8cd6fb191d2c183ee4
2021-03-24 19:44:01 +00:00
drh
6db1c9da67
Improvements to distinct aggregates such that they can sometimes avoid
...
using an ephermeral table to test for duplicates if the column that is
distinct is part of an index.
FossilOrigin-Name: ef4ac0ddd297bbd38351410c5a387e1628561b3f1bec9e4c2c9d76fbe29f955a
2021-03-24 17:28:11 +00:00
drh
29821b46f5
Fix a harmless compiler warning.
...
FossilOrigin-Name: 26b005a95e4f3e378e3bc40f57321ffbab72b6fc990d13b56b3121990d325f63
2021-03-24 17:04:32 +00:00
dan
1d14ffe63d
Fix a problem with renaming a column when there is a quoted string immediately following the column name somewhere in the schema.
...
FossilOrigin-Name: 4719fae6262aa3563f3df6aca0170c6d847bb18ab7b0e6e7609a0e7b6f0c6b1b
2021-03-23 22:15:34 +00:00
drh
5191ae06ab
Add an ALWAYS() on a branch that is always taken.
...
FossilOrigin-Name: 0646d2260c523d368e3f6bc3d110a9011d35ce83bd6751ad412d8fd9a253cb7a
2021-03-23 21:02:24 +00:00
drh
0227d9304d
Test result adjustments in test/misc7.test due to the EQP format change.
...
FossilOrigin-Name: d3ade8c7fe58e05af9d44a79478776b050a680c1338188f2d4b222b937e682ea
2021-03-23 19:39:27 +00:00
drh
ed42b98056
When doing schema updates, try to convert (incorrect) double-quoted strings
...
into (SQL-standard) single-quoted strings.
FossilOrigin-Name: 0770470488e140fa21cb5097c26d58e21da85544af8b69faced1670bbc6d6089
2021-03-23 16:34:13 +00:00
drh
46bee2aa12
Tweaks to test/scanstatus.test to account for the new EQP format.
...
FossilOrigin-Name: 2eb28afd01f43143a9c0cd6cea68f3095f993952d54ee06b781514a7754490cd
2021-03-23 15:39:02 +00:00
drh
06c7cc7694
Changes to test/analyzeG.test to conform to the new EXPLAIN QUERY PLAN syntax.
...
FossilOrigin-Name: d8afde1bf1d41a349a161a293533a9fdf23ff23b8f1bcc323e79e806c5c526f1
2021-03-23 15:07:17 +00:00
drh
695c83ac0e
Fix a test case in bigmmap.test so that it works with the new
...
EXPLAIN QUERY PLAN output format.
FossilOrigin-Name: 9ac064fe2aee4aa1423e7c8043dfec52ecf2af3e8361ebb7d9c104cca82b4d23
2021-03-23 14:33:35 +00:00
drh
50e43c5094
Add the ExprList.nAlloc column and use it to make the sqlite3ExprListAppend()
...
routine much faster.
FossilOrigin-Name: 1d3c4662c2f522ac695d97441324069f3fc65f3fa0b87194c7094dfb8cd549f2
2021-03-23 14:27:35 +00:00
drh
a7fc252b0a
Enhance the EXPLAIN QUERY PLAN output to use symbolic names to describe
...
subqueries, where possible, instead of cryptic subquery index numbers.
And in other ways, make the EQP output cleaner and easier to read. Little
code is changed, but many of the test results had to be tweaked to align
with the new output format.
FossilOrigin-Name: f8e28308fdb45fbdef30003320d653410d69bb8ec92eef35c4245a99e2d0603b
2021-03-23 01:06:02 +00:00
drh
e3e8f5ce9c
Merge recent fixes from trunk.
...
FossilOrigin-Name: 4a343698b4ec3364b0eecb7fa074512ecac8b586aff1f977ca77f215e96e0ce5
2021-03-22 18:53:26 +00:00
drh
f93ff6b9f4
Increase the version number to 3.36.0 to begin the next development cycle.
...
FossilOrigin-Name: 5cee689d647087a5e796da2acb247a4f469a8b39b54f59bb4ad2386647cef1bd
2021-03-22 16:50:39 +00:00
drh
d01206ffc2
Fix an assert() that in preupdate-hook logic (not normally built) that
...
can be false when running VACUUM on a corrupt database file under
PRAGMA writable_schema=ON.
FossilOrigin-Name: 6bb2134027a12801de8e0c73482d94682f902024800a7e426614f65a2fe4f64c
2021-03-21 18:23:48 +00:00
drh
97060e5aa2
Add a better comment and an assert() on the code inside sqlite3CreateIndex()
...
that REPLACE indexes come at the end of the index list.
[forum:/forumpost/ceb51d83f7|forum post ceb51d83f7]
FossilOrigin-Name: 71e4da136bd1b5b75a699d69fbaaaec0f9dd1a87e2a9d049a55154892b06647b
2021-03-21 17:52:47 +00:00
drh
01a8ad231a
Fix the "box" output mode in the shell when statement returns zero-column
...
rows (for example from "PRAGMA incremental_vacuum").
FossilOrigin-Name: 34439fe3aeea7cbbc817245d39c345a7f5df7a82ac15ee4d71bb9a4d818198ed
2021-03-20 23:15:52 +00:00
drh
2f2091b10e
Use the canonical name, not the AS name, when showing the MATERIALIZE or
...
CO-ROUTINE lines for a CTE.
FossilOrigin-Name: 1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2
2021-03-20 15:46:01 +00:00
drh
8210233c7b
Revise tests cases to align with the new EXPLAIN QUERY PLAN output.
...
FossilOrigin-Name: 50fbd532602d2c316813046ed6be8be2991c281eb5f295c4c28520a0de73862c
2021-03-20 15:11:29 +00:00
drh
3c48ee9e0e
Fix a faulty assert() in the OP_SkipScan opcode.
...
dbsqlfuzz a15a9b2ca82e812ad52f62c86cc93dca0dc72f01.
Test cases in TH3.
FossilOrigin-Name: 1805b9aaf1172e36e08271f78ebb7676bba9f3c4c28e077ee94cc31b8e7ec741
2021-03-20 01:00:26 +00:00
drh
6610e6a54f
Further simplification of the EQP output. Only show "SUBQUERY n" if the
...
subquery is anonymous.
FossilOrigin-Name: 1fadd30525dbf22678ba014b78af3a0fb33047692f073b7c62a90a028081ac48
2021-03-19 19:44:56 +00:00
drh
d218decec5
Merge enhancements from trunk.
...
FossilOrigin-Name: d192d737755876293a2914fcb9a0d5efbe07f3cd281c038666ea5aa879c06321
2021-03-19 19:09:24 +00:00
drh
49e6e5a04f
In the wholenumber virtual table, increase the cost penalty for running
...
open-loop. This appears to fix the problem reported by
[https://sqlite.org/forum/forumpost/b52a020ce4 |forum post b52a020ce4].
FossilOrigin-Name: f12b54042e27b2fe99f23f97c103ee4371f8d4df3b049d9bb5d64891db56eee5
2021-03-19 17:54:43 +00:00
drh
340fd0bc23
Dbsqlfuzz found a new way to make that branch in codeVectorCompare
...
reachable.
FossilOrigin-Name: 959272c27555e39f180d46257afe45d41da1f5df38ea269196c06741ff6a278e
2021-03-19 16:29:40 +00:00
larrybr
4cf34a5e73
Fix tokenizer's classification of EBCDIC newline.
...
FossilOrigin-Name: 8680f6a8fb34b9c0ea9b4286888b4df5df427d2df10c782d198bc3f2fdcd0704
2021-03-19 15:02:59 +00:00
drh
66f9655599
Restore the NEVER() that was taken out by [f481636f1a0333c6] because that
...
case is no longer reachable after the previous check-in.
FossilOrigin-Name: e3a78b2a237a2e101faf01dde913f63641da8854720a9daa4b45a9c5dfe30b1b
2021-03-19 14:51:15 +00:00
dan
93eb906488
Fix a crash that could occur when an INSERT has more than one ON CONFLICT clause, at least one of which contains an unresolvable symbol.
...
FossilOrigin-Name: 74208386508012326a0e88ec5b4a995d1b99607720bb05785a01c2d89ea03543
2021-03-19 14:26:24 +00:00
drh
d685dd6be6
Correlated CTEs should not generate a materialization subroutine. If they
...
need to be materialized, each use case must be materialized separately.
dbsqlfuzz 01b8355086998f0a452cb31208e80b9d29ca739a.
FossilOrigin-Name: d72d865d3e8503a545603038eb26044bee42e4e8725522be678059ce6517fc8d
2021-03-19 13:53:34 +00:00
drh
a979993b25
Improved labeling of EXPLAIN QUERY PLAN output. Many test failures due to
...
the different output format.
FossilOrigin-Name: 6f8faec0222a7ca07cc1a5ed16cc08d92c6e20bbcb34851b4eff9e624de53601
2021-03-19 13:00:28 +00:00
drh
080fe6dec9
Add a NEVER() on a branch that was made unreachable by the
...
"circular reference" fix.
FossilOrigin-Name: 114d9780aecdd9f03f235fc1f2ab81ef89cb00b3bafa61cff612e939595ff5f0
2021-03-18 20:04:46 +00:00
drh
f09a1794d8
Disable a test case requiring generate_series when virtual tables are not
...
available.
FossilOrigin-Name: ee86e2f4c5999a090a5d2fe8251107cf55e621a6b988f315eb82f462cc1e377d
2021-03-18 18:27:37 +00:00
dan
ca237a8b7b
Fix a problem causing spurious "<cte>: circular reference" errors to be reported when there is actually a different error in the SQL statement.
...
FossilOrigin-Name: 9981223618782bf867dfc8988d0c634a42f569228880c5c5e00aa4ae762cfff2
2021-03-18 18:25:43 +00:00
drh
42d2aec1e9
Increase the patch level to 3.35.3.
...
FossilOrigin-Name: 259b7c3e219873f3f679b00d3a89ecdac8a02c3472176d3a260f399e1faf3611
2021-03-18 16:52:06 +00:00
drh
8d81aac13f
Fix the OP_OpenDup opcode so that it is able to duplicate a cursor that
...
was itself opened by OP_OpenDup. Add additional verification of
ephemeral tables. Fix for ticket [bb8a9fd4a9b7fce5].
FossilOrigin-Name: bcbe5308f3a3b94f965b0f5627cb29cce2e09343b86d757e2de889f7773576e7
2021-03-18 16:47:24 +00:00
drh
76f7b16f1e
Remove unnecessary code from sqlite3BtreeClose() and add test cases.
...
FossilOrigin-Name: edbfdcaefae1e9a42c046c058341bf5b0f533c0b0cbd39543fcaa2a83d67561d
2021-03-18 16:36:31 +00:00
drh
5a4a15fd2e
Further sanity checking of the OpenDup cursors.
...
FossilOrigin-Name: 0ec71cf16983697f68ab8d921d80a5f39611e4cb5e6e19cbc4a9ad6d49bfc835
2021-03-18 15:42:59 +00:00
drh
8df014979e
Fix the dbsqlfuzz-derived authorizer in fuzzcheck to avoid creating junk
...
files when running rogue tests.
FossilOrigin-Name: eca21a620630b0c8d21a91ad6a8760a6c87270ab2a45cafa18bd31b305c53dba
2021-03-18 14:36:19 +00:00
dan
eeee8a5f01
Automatically close ephemeral b-trees when their last cursor is closed.
...
FossilOrigin-Name: 39b5af18c0580c8e92516d410f8c465bfec31b2d0be9df1cfd6a1d1a19b4fc14
2021-03-18 14:31:37 +00:00
drh
8e7c82ca3f
Fix a problem with the filename normalizer in unix, discovered by dbsqlfuzz.
...
FossilOrigin-Name: ff1eca7fcdcbc550a5f23db9d85281e5373500912699a7c7ae54bc0df0547e26
2021-03-18 13:55:25 +00:00
dan
918232aadb
Allow instruction OP_OpenDup to duplicate cursors created by OP_OpenDup, as well as by OP_OpenEphemeral.
...
FossilOrigin-Name: b8de980b2fb78088ef74e053cb987bb84319d13dc96ce1e89baaaa3fe8cf1efc
2021-03-18 13:42:53 +00:00
drh
e44ac3858c
New assert statements associated with Ephemeral cursors in the bytecode engine.
...
FossilOrigin-Name: a8ce73e2573b271d5d45838802ed1905ce5e18d5fafe0078700e79fab85457e2
2021-03-18 13:19:41 +00:00
drh
2b994ce5d3
Change the name of the iDataVersion field of Btree to iBDataVersion to make
...
it distinct from Pager.iDataVersion.
FossilOrigin-Name: e4c44c0bca317c03f8e6d3aa7cc88e5f96159a3d91c07257d408f7db028fd151
2021-03-18 12:36:09 +00:00
drh
176b04c476
Version 3.35.2
...
FossilOrigin-Name: ea80f3002f4120f5dcee76e8779dfdc88e1e096c5cdd06904c20fd26d50c3827
2021-03-17 19:07:21 +00:00
drh
8b04094c4f
Fix a harmless compiler warning in the appendvfs.c extension.
...
FossilOrigin-Name: 0ed7eb9115510511f13dca715bb2b178580648517d8d30436a992d70a2e85ac1
2021-03-17 19:05:59 +00:00
dan
51ddfef74d
If there are already 500 or more simple SELECTs in a query, do not add more by flattening UNION ALL sub-queries into parent join queries.
...
FossilOrigin-Name: 9520bed2bd87dc56543ee58123323d293e960ecd84707b77f15f41669a2c9c3d
2021-03-17 14:29:37 +00:00
dan
42470513b7
Fix a problem in sqldiff virtual table hanlding to do with tab and other non-space whitespace characters in the CREATE VIRTUAL TABLE statement.
...
FossilOrigin-Name: 1737e4fdfc9a3628415b234338a68a64cbbaadb23598517761e571ab7ed7ad14
2021-03-17 11:25:42 +00:00
drh
a7d8d4a07a
Date/time functions with no arguments (ex: date() or time()) should be
...
non-deterministic. Fix for ticket [2c6c8689fb5f3d2f].
FossilOrigin-Name: 1734c332e7f609769fc30f82cf7af097c2964e08900ee3e297f6a25e6df60555
2021-03-16 18:41:20 +00:00
dan
1fffa73ea2
Add tests for sqlite_rename_quotefix(). Fix a memory leak in the same.
...
FossilOrigin-Name: 531550056c38589c99c9a97b6afdbf8f34ff8d2131d74e9d42af3506e8045064
2021-03-16 18:24:49 +00:00
dan
2ad080aa82
Have ALTER TABLE RENAME COLUMN and DROP COLUMN use sqlite_rename_quotefix() to convert any double-quoted strings in the database schema to their single-quoted equivalents.
...
FossilOrigin-Name: 6446c0961077396086251670102ea7bf17d54a6b0f0ca56c6af89028a1ff9039
2021-03-16 16:14:48 +00:00
drh
0d3485f019
Increase the version number to 3.35.2.
...
FossilOrigin-Name: 7a211b3f09b17b758ac43c3ed14e3f90c55459077412a57baca0f7cadff47fbf
2021-03-16 14:43:26 +00:00
drh
0f503f6696
Fix recent breakage of the appendvfs extension.
...
FossilOrigin-Name: 7dbbe5b34eea31ea54a5804035d4d0dfeb09c42cd9ab337e1e64c1296decbef3
2021-03-16 14:26:56 +00:00
drh
3fee67533e
Comment and stylistic changes to the appendvfs.c implementation.
...
FossilOrigin-Name: 25c3186aa143328157fb506a29802e87099cd14be4fa218230484a3212f20621
2021-03-16 14:12:26 +00:00
dan
00bc66f2cc
Merge trunk changes into this branch.
...
FossilOrigin-Name: f15d51054afb1e3fec87938f2b04a5a0d0611b08248367850450de7c4166e3d1
2021-03-16 11:21:36 +00:00
dan
776a578c21
Fix a problem with ALTER TABLE RENAME COLUMN when used on a schema that features generated columns.
...
FossilOrigin-Name: 0e255b26872b50581d470952dd98e21dd82d081885006f58d49daa4b4576b35d
2021-03-16 11:11:07 +00:00
larrybr
67d4bbf6c1
Fix assert typo.
...
FossilOrigin-Name: 3aedf818c1cfc88ee1103abd8b20e787f6be1bcc4c9350963f0cd52f5ac04154
2021-03-16 07:06:29 +00:00
larrybr
b0f23784f6
Merge from trunk.
...
FossilOrigin-Name: eae8236f3b9bc326648d1c8fca61cb3c38f821d06fe915fd0978cffeb1f6152b
2021-03-16 06:50:39 +00:00
larrybr
5cad178b86
Fix appendvfs bug exposed with bigger files, and add tests for such conditions.
...
FossilOrigin-Name: 19b1f53a1c0a14440ae8ac71660a2595d37a4a5b201055c19366c7dca75d6660
2021-03-16 06:41:51 +00:00
larrybr
21f0f694ff
Create new branch named "appendvfs_fix"
...
FossilOrigin-Name: 026edd601444d86858a503ffc3be17667a62a29f09c001009d9a678400b3b0a1
2021-03-16 04:03:59 +00:00
dan
1e24072d05
Add internal SQL function sqlite_rename_quotefix(). For converting double-quoted strings to their single-quoted counterparts in DDL statements.
...
FossilOrigin-Name: d874b300463ce0bbb53b7e2f88c6a12893e4fd751fcc7f810077ba108f4061ef
2021-03-15 20:22:34 +00:00
drh
a7eaa518f8
Version 3.35.1
...
FossilOrigin-Name: aea12399bf1fdc76af43499d4624c3afa17c3e6c2459b71c195804bb98def66a
2021-03-15 16:53:57 +00:00
drh
67c4ce131b
Improvements to the built-in ".dump" documentation in the CLI.
...
FossilOrigin-Name: 0915f969f429a8d0b594e937e0128d5476774d9bbe4a24081dbc60273cb5bb9a
2021-03-15 15:12:10 +00:00
drh
c9f1a7d1df
Bump the version number to 3.35.1.
...
FossilOrigin-Name: 184d5a352f098459cfb0cc029713d5d43fefc83f6cc95ce5666bd07591aaac2f
2021-03-15 15:02:38 +00:00
drh
6127d73abc
Improved detection of conflicting indexes when doing DROP COLUMN on a column
...
whose name is quoted in the index definition.
Fix for ticket [1c24a659e6d7f3a1].
FossilOrigin-Name: c450d0ad6b39db4bf93015d629e25f7af0d7a9779f7a987e2fc38a5ef064a182
2021-03-15 14:58:12 +00:00
larrybr
7bdbe59829
Make shell's .help output for .dump more accurate as to what can be dumped.
...
FossilOrigin-Name: f91d8c09a02f7a7ab354c49cd193d422074daa5eb908f17d1907a8c2b38f96a5
2021-03-15 12:56:00 +00:00
larrybr
d8b4befdef
Create new branch named "cli-tweaks"
...
FossilOrigin-Name: 4cf056a571cae6fded8136bc12f3a2787da37c6b52383cbf7b918827654ba4e7
2021-03-15 12:32:35 +00:00
drh
0e8075ab78
An additional test case
...
FossilOrigin-Name: 7e2d7ca15a84e5bd9f2b1360232607d15c2dbcc9d30b0f1a7cdbf2865e6b1af5
2021-03-14 20:17:06 +00:00
drh
44d441313a
An alternative approach for fixing ticket [1c24a659e6d7f3a1].
...
FossilOrigin-Name: a2adae907a28e169e64cfe69d97d7b68cb94e6ba07d2dfa995e3fbc6672fafdd
2021-03-14 19:55:40 +00:00
dan
b19a581241
Fix a memory leak in the new code on this branch.
...
FossilOrigin-Name: 0817cf2ec08fdefd3c1d41790df7b5d6d490767757b44bb0229694023c8e40fc
2021-03-13 18:23:30 +00:00
dan
9bfafa8917
Fix typos in comments and add test cases.
...
FossilOrigin-Name: 01312a3dbd92823af535dc618c68d95a2aa1cbee2501b0a9826eae3f09bec760
2021-03-13 17:21:24 +00:00
larrybr
9c0fee296a
Update generated autoconf/Makefile.msc to reflect its source.
...
FossilOrigin-Name: d9f8f488ff9d47fe7bb8838e683bae4fea038f7278ef885ecf292143a0dd88ed
2021-03-12 23:15:08 +00:00
dan
7607580791
Fix a crash in new code on this branch.
...
FossilOrigin-Name: c05ed2a8a9c4975c69bdfa733598ed90c1509d52b3c39dedbd829ab148777e1d
2021-03-12 21:09:20 +00:00
dan
051170c453
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: 198bc510d64b5794559584ad5c9de41dc966dce4eb78be15b12adba43dfcb639
2021-03-12 18:33:55 +00:00
dan
5383db714e
Attempt to use an index for DISTINCT aggregate queries that have GROUP BY clauses.
...
FossilOrigin-Name: 3bca003cd2b2cb38d4a4e2e5f673ee0ac05bfe31247ec09e7bd379b77a31b44c
2021-03-12 18:24:31 +00:00
drh
f1c43ea647
Version 3.35.0
...
FossilOrigin-Name: acd63062eb06748bfe9e4886639e4f2b54ea6a496a83f10716abbaba4115500b
2021-03-12 15:10:09 +00:00
drh
0ca23aa437
Fix broken requirement marks.
...
FossilOrigin-Name: 98d67152849e062c6de45b0e526daffc3d6cb29d563d40664a8d7140119a30b2
2021-03-12 13:49:09 +00:00
drh
9d59e3b1bf
Fix the ".read" command in the CLI so that SQLITE_OMIT_POPEN disables
...
reading from a pipeline.
FossilOrigin-Name: cea34f3cc35ad6dc67691799a219a30739f2296945d624d232bf76150c598ec0
2021-03-12 01:49:08 +00:00
larrybr
ab6098cfa6
Conform description of sqlite3changeset_op() arguments to implemented behavior, some reformatting.
...
This is a comment-only change; no code is affected.
FossilOrigin-Name: 9d6e544c47b9a5d97bd02a658db5cd202bd1952f8ba3bc50e8cf47d7206041c0
2021-03-12 00:44:10 +00:00
dan
3ddc3809bf
Fix a Tcl object leak in test_session.c.
...
FossilOrigin-Name: 07150cf15ad36c7fc681a911f66db23d610ddf110a7be7f1fcefbd8750cd135a
2021-03-11 15:57:25 +00:00
drh
407cfe994d
Bug fix in appendvfs.c: Adjust the size parameter for
...
SQLITE_FCNTL_SIZE_HINT to account for the prefix.
FossilOrigin-Name: 41df3bbefd63151f2ddb920066777eab8e07ecfc0edb0f71f9493debe0a4a2c4
2021-03-11 13:43:29 +00:00
dan
632f0ed265
Have the Tcl tests support environment variable SQLITE_TEST_PATTERN_LIST, so that if it is set it is interpreted as a list of patterns that are matched against tests file names. Only test files that match at least one pattern are run.
...
FossilOrigin-Name: b7c92e1d08f213865f026d8dbdc4e805fb5c119b7f206506ed06e83a878de657
2021-03-11 08:49:52 +00:00
dan
3fb7bd5ee0
Fix sanitizer complaint in fts3 code.
...
FossilOrigin-Name: 424b39eaeb578f85e58214af4b467e6e363431308ab7a327774e62fa70d3c2db
2021-03-10 20:04:21 +00:00
dan
55b2e8b062
Fix further sanitizer complaints in the fts5 code.
...
FossilOrigin-Name: 4cb00b9d4020a51f690720c6f51009c5be8c22ef8c70807ead1d953d19784f26
2021-03-10 19:32:47 +00:00
drh
662a1426cb
Improved testcase() related the SQLITE_MAX_ATTACHED vs. SQLITE_MAX_DB problem.
...
FossilOrigin-Name: 27d3c00efef66ad48ed94228474dbea3ad81ea5c19425028c42cf4220920a645
2021-03-10 18:21:18 +00:00
drh
4d17e30624
Improvement to the ATTACH-abuse authorizer logic in fuzzcheck.
...
FossilOrigin-Name: 88132f698a7a9b7d41dd1dd393592cbda130d2bf1a9fd18c509503e1891b9655
2021-03-10 17:52:59 +00:00
dan
ba34b79f15
Do not run avfs.test when testing SQLITE_OMIT_VIRTUALTABLE builds.
...
FossilOrigin-Name: 2ab6957a2238a2ab713a50d21dbd9921c944e8141197275bbfe7dae303fee7d0
2021-03-10 17:43:18 +00:00
drh
099b385d17
Do not confuse the constant SQLITE_MAX_ATTACHED with the maximum number of
...
schemas. Add the new SQLITE_MAX_DB constant for the maximum number of
schemas. [forum:/forumpost/a006d86f72|Forum post a006d86f72].
FossilOrigin-Name: 7b65fb9f7bd616f834633afd64b3448bf9ca2b6e4cc6d6c01e75d1d877c88a79
2021-03-10 16:35:37 +00:00
dan
bc3c4e0830
Fix test file avfs.test so that it works with SQLITE_DEFAULT_AUTOVACUUM builds. Do not run avfs.test under test permutation "journaltest".
...
FossilOrigin-Name: 2c6078ebe797dd2cb6045b5f13e6d92a6b49393ecf96f9fd7222412f5a3eefd5
2021-03-10 15:10:20 +00:00
dan
3be2b860d0
Fix a few sanitizer complaints in fts5.
...
FossilOrigin-Name: 4fe4fee00e9294fa384bd073ed8e9a2a4ad10dcf653b6ad4851e44a64443ede9
2021-03-10 14:57:10 +00:00
dan
a1c467f51f
Fix a problem preventing wapptest from setting SQLITE_ENABLE_LOCKING_STYLE for OSX tests. Also modify the "Sanitize" configuration in releasetest_data.tcl to subsume test item 6g.
...
FossilOrigin-Name: f762d7df2a41a88560a4251d744e0887f42812f8160af4f0129d22a71c0fa48b
2021-03-10 10:43:17 +00:00
larrybr
c5edbd1cf6
When shell has no .ar, fake its effect w.r.t. page_size and table creation/filling.
...
FossilOrigin-Name: 959f5c65ea14f4716df61e250e9d5a0d69d602a2a973ad22a364e640162c2983
2021-03-10 06:06:16 +00:00
drh
a94c484584
Add appendvfs.c to the MSVC makefile.
...
FossilOrigin-Name: a6681fbb2e0c8d5a7c968f6fd458f61658fad6ac4c7eb8663762b6ac386cdae5
2021-03-09 23:38:27 +00:00
dan
4049ede97d
Update a comment in btree.h.
...
FossilOrigin-Name: 9645fe1a050e8b61aea1fba2f142819c387ecb043741392c5719bf7ad303bf8b
2021-03-09 21:20:12 +00:00
drh
0db20c490a
Fix a bad comment (copy-paste error) in the byte code engine. No code changes.
...
FossilOrigin-Name: 1c01745734c7b62a8c792f743aae08dfbb9e047dc92fef8da067fec152b20fd5
2021-03-09 20:58:21 +00:00
drh
45e4cb8e77
Improved comments on the NOT NULL strength reduction optimization.
...
FossilOrigin-Name: a85d72293914b48edbb39171fd591d37ffb09570d8103140a052203ec71d49ee
2021-03-09 19:52:15 +00:00
drh
6d0053cfa7
Extra comments and testcase() macros associated with the new
...
sqlite3ParserAddCleanup() mechanism. No changes to release builds.
FossilOrigin-Name: c3c8691121e6cb7bfc326212cc81a7472c0e6f22e655ab024bd4bd885e1cd878
2021-03-09 19:32:37 +00:00
drh
e7a377046d
Add --enable-math to the amalgamation autoconf. On be default. Improved
...
logging of the amalgamation autoconf.
FossilOrigin-Name: 85d28b52250e1817b722dc10da3b7b73abf7539cbe7aa913b5960ae4da40d5f8
2021-03-09 17:09:00 +00:00
dan
96ecb7b004
Add missing comment to new routine in select.c.
...
FossilOrigin-Name: ef2f0cf21ba61bdd29e09cf41b012a2d757683f524a252f0af7dfee7df1a1a0f
2021-03-09 16:47:33 +00:00
drh
42c93b5e9f
Math functions are enabled by default in the main configure script.
...
FossilOrigin-Name: b7456e0715c63308b7b3acf49eb66ecd947481400d4688ae459e2e1499447bcd
2021-03-09 16:35:14 +00:00
dan
4fcb30b7d7
Experimental optimization for distinct aggregates (e.g. "SELECT count(DISTINCT <expr) FROM ...").
...
FossilOrigin-Name: eb919611fd2f255e4ad1fe7db633363793169f6cf99c650eaefa48c022eb5d22
2021-03-09 16:06:25 +00:00
drh
24ec37c3b3
Improvements to the configure script. Math functions are enabled
...
by --enable-all.
FossilOrigin-Name: c79c6d18dee608e54ae31388b240cc521218309094502d8815111bb4ddf7d9ef
2021-03-09 13:53:39 +00:00
drh
657a7a66c3
Update the authorizer in fuzzcheck to align with dbsqlfuzz.
...
FossilOrigin-Name: f86d8fae3b29de014d8bfcae38a15bdb15ddceabfcfff7829f3145cfd69dff2a
2021-03-09 13:12:58 +00:00
larrybr
ddf4972063
Add tests for too-tiny appended DBs, clarify align macro.
...
FossilOrigin-Name: eb40a8dea6afe6890ddda989de83f3d4ae03b112bf78bfc818dfbd57cc5b5b2a
2021-03-08 20:13:43 +00:00
dan
52a0753152
Add test cases for ALTER TABLE.
...
FossilOrigin-Name: 9c9ba36e859e330c50ed40ede4b93eeb0a5c3337240465d953a7be9115a81390
2021-03-08 17:22:01 +00:00
drh
e58b2b4a80
Fix a bad assert in RENAME COLUMN.
...
dbsqlfuzz 3f0a7245b69cd08617d7d7781ebaedb0fe765a93.
FossilOrigin-Name: f13e0d12f137cd6b4e83e92bd36652431d8416e6eed4797313e061f2e390d39b
2021-03-08 17:17:38 +00:00
drh
baca9807f9
Fix a harmless compiler warning in appendvfs.c
...
FossilOrigin-Name: f538961a8058cc327d64c8ec317f1b4f8bbb604f90261160c6c27f26f4800682
2021-03-08 16:29:06 +00:00
drh
7ae0549961
Enable internal functions for fuzzcheck.
...
FossilOrigin-Name: 79281603b951b438303130820deb6b05baeca366c2cd93be7d8909d3232bcc96
2021-03-08 16:13:52 +00:00
larrybr
b47e4c2819
Added test/avfs.test (missing from branch merge for some reason.)
...
FossilOrigin-Name: 08fa67053c20d223c9b5334fe2e85adc95588b91046c100d7fe8e8e2535e485f
2021-03-08 14:32:26 +00:00
larrybr
fb645d20bc
Merge appendvfs updates and testing.
...
FossilOrigin-Name: 63fcf301fedf1f3708e2226ed499a53b3e9c1d2cc2b17d4b0b736e36aff0ae74
2021-03-08 14:26:22 +00:00
drh
e021890954
Require that the appendvfs suffix mark indicate that the appended database
...
begins at an offset that is a muliple of 512 and that the appended database
contains at least 512 bytes.
FossilOrigin-Name: aeb87cc70495dd172e170eff31fd754331d4b979c0b649ab239f8c5c0c76e695
2021-03-08 13:45:08 +00:00
drh
1e6f334645
Correct the precendence order for rules that determine how a database is
...
opened by appendvfs when a database is appended to another database.
FossilOrigin-Name: 92989fc56f2e81ac13f8106ec83c930f43d10715269b988ee47c9bfa53621995
2021-03-08 13:30:29 +00:00
drh
40942f22f1
Minor comment and formatting changes.
...
FossilOrigin-Name: cf2add064f70c477fee1473c3196b72deb41222eb0cdbbdbdcf4a79995184e2b
2021-03-08 12:59:16 +00:00
larrybr
5777380d19
Add tests for sqlite3 shell with -append flag.
...
FossilOrigin-Name: d1790288729441d53603709df02aa5fb5f04714e2da86ce128ca81840b0b545f
2021-03-08 01:31:53 +00:00
larrybr
7e398c04fe
Add grow/shrink tests. Fix truncate bug. Make appendvfs.c easier to inspect.
...
FossilOrigin-Name: c9521fa55620d0cb3cec20db7b42bc5f18876b42dca07811d1cd0f4b2907eab2
2021-03-07 18:55:25 +00:00
larrybr
b2e9640155
Merge from trunk.
...
FossilOrigin-Name: 729117cdfa2d6ff24b66656e9ccc380199606b830fc338286e4dd10e8e787597
2021-03-06 23:49:18 +00:00
larrybr
1b22ad8ae6
Create initial tests for appendvfs, and make it available as a statically loaded extension.
...
FossilOrigin-Name: 9f33d45179f5985bd4c4f7582e94f5833a63f853c8cdc19f39cf7e3ee70177d0
2021-03-06 23:36:47 +00:00
drh
4bb4293b2a
Limit parenthesis nesting depth in FTS3 expressions to
...
SQLITE_MAX_EXPR_DEPTH.
FossilOrigin-Name: 5ddd8032ef9ecd5b53909d304c8f1375a72f270fd7810964cb4e385e25bedd4f
2021-03-06 15:13:26 +00:00
dan
7f8653a257
Ensure the correct collation sequence is used for comparisons when delimiting a RANGE window.
...
FossilOrigin-Name: 01eae68e85b31b7a9f08733459765bbd9bf9dad592bf64f10fc2fa32e02a89c2
2021-03-06 14:46:24 +00:00
dan
fa9011ec70
Fix a crash in fts3 that could occur when running a NEAR query on a corrupt database.
...
FossilOrigin-Name: 609d94996324f3d3c12bb8cc04a2527d1d86c35cdb2267b5b34053c961158986
2021-03-06 13:28:07 +00:00
drh
747cc9425d
Fix a possible NULL pointer dereference when applying a DROP COLUMN to a
...
corrupt database schema. dbsqlfuzz 419aa525df93db6e463772c686ac6da27b46da9e
FossilOrigin-Name: 349ccf58ae4bb770805066102fc8e9e478d4da1f7a6a728223bd74eabf7b7843
2021-03-06 13:02:12 +00:00
larrybr
1f8f131a8b
Merge last day of trunk changes, reverify build.
...
FossilOrigin-Name: 1d67ed1c98a6bc49cce6bdc156bd6f22b3f37d33226bd62430a43aa5318f5781
2021-03-05 20:52:19 +00:00
larrybr
feecc9f547
Fix appendvfs bug exposed by docsapp build (in docsrc), and tighten/revise published behavior.
...
FossilOrigin-Name: 7f0f2eacdb496f7f36865ba62164a48edb324a3c6baede736b4e7edf5e8b0fdb
2021-03-05 20:46:53 +00:00
drh
70149ba47e
Modify the SQLITE_DBCONFIG_ENABLE_VIEW option so that it always permits
...
TEMP views, just as SQLITE_DBCONFIG_ENABLE_TRIGGER always permits TEMP
triggers.
FossilOrigin-Name: 83dab8b358b6832a221a58e74dd5e99b9cdea4eee65124bb6799881e867d989c
2021-03-05 18:33:01 +00:00
dan
68d4f07577
Fix problems with RETURNING clauses attached to UPDATEs on tables with virtual columns.
...
FossilOrigin-Name: 6b41b136fbfc0b56a6948f2306b69fb1d69306adb86674a15a87fe3b52062512
2021-03-05 15:42:15 +00:00
dan
0d08072b68
Fix another problem with RETURNING clauses in UPDATEs against tables with virtual columns.
...
FossilOrigin-Name: f0ef5c76ab1a6568b9148b928277bf589d4cb7033c0acf3e6323879b656d8bd1
2021-03-05 15:29:22 +00:00
dan
a7e16a2f05
Fix an assert() failure that could be triggered by a correlated sub-query in a RETURNING clause.
...
FossilOrigin-Name: 551260c8625828262809b1ef7acf5343a3527b7e167ca0cfd13b81e5ece0e66c
2021-03-05 15:10:33 +00:00
drh
bc7819d176
Fix the processing of implied LIMIT clauses when flattening a compound
...
query.
FossilOrigin-Name: 90c6b9fcb0e15e2552fe5be53f8201f145bb535cc37b603d488eadf33438412b
2021-03-05 14:08:45 +00:00
larrybr
b14d14696b
Create new branch named "appendvfs_tighten"
...
FossilOrigin-Name: 48c968bf4c8e1517864bec68d3072441994ea511a9cb446d2fdf031d5f43b077
2021-03-05 09:42:58 +00:00
drh
05edf729f7
Mark the NotUsed parameter to the dropColumnFunc() function as unused,
...
to avoid a harmless compiler warning.
FossilOrigin-Name: 23459071091248e94202e609bb8031c3e34722b8ae8ff5a66851dcc528a2d2c2
2021-03-04 19:44:01 +00:00
drh
91be05a910
Put ALWAYS() on a branch that is now always true because of changes
...
in OOM behavior due to check-in [9adf6e2469d18bc3].
FossilOrigin-Name: 8a1bb9c3e92085fb71d75eb36f64eb85053a4730fd314acd401e7ad32c274748
2021-03-04 18:34:54 +00:00
dan
39b6bd5e17
Update shell.c.in so that SQLITE_SHELL_IS_UTF8 is set to 0 if the -municode option is passed to gcc on windows.
...
FossilOrigin-Name: 99e6a0f020fadda4011e4ca370d2421dbf2f97f6fb004fcbba9bd6c76faf7a73
2021-03-04 18:31:07 +00:00
drh
5f0922b96c
Remove a branch made unreachable by check-in [e893f88750ea64d4].
...
FossilOrigin-Name: 20d7dc120dc964a0236da719e4de22bff5110b95da396e2ac6790e9f6b667899
2021-03-04 16:32:28 +00:00
dan
e8dd6a4e77
Fix a segfault that could occur following an OOM condition.
...
FossilOrigin-Name: 9adf6e2469d18bc3bfc0c804cfcaa692e23ab6b3e13465dcfc51c4b111b05cb4
2021-03-04 16:10:23 +00:00
drh
aae0f74e64
Earlier detection of a misplaced ORDER BY or LIMIT clause in a compound
...
SELECT. This prevents problems in recursive CTEs with multiple recursive
terms in which there is an ORDER BY or LIMIT clause on the last non-recursive
term.
FossilOrigin-Name: e893f88750ea64d45922429e022c585748974016404f2a2b7952f5a227865246
2021-03-04 16:03:32 +00:00
dan
50f9f6c649
Fix a crash that could occur if a sub-select inside an EXISTS expression features an ORDER BY clause containing one or more window functions.
...
FossilOrigin-Name: 9768e7db624fbfe688d61ac06bffca14a169d439d8f65f5a14529af5660d3d2e
2021-03-04 14:18:22 +00:00
dan
8718f0b613
Fix a buffer overrun that could occur in fts5 when running a prefix query against a corrupt db.
...
FossilOrigin-Name: 4da40620ac8557aba6e1e06e720418b55e9950f406288b03749ef1b117041cd9
2021-03-03 19:36:40 +00:00
dan
0bff34aea3
Remove the --timeout option from the valgrindfuzz Makefile target.
...
FossilOrigin-Name: 3f520b8bdef7dcdad30e052ed8a07b0493bff4497603521e701fab7324df2995
2021-03-03 16:46:03 +00:00
dan
c6920cdb0c
Fix a case where fts3 was erroneously reporting corruption.
...
FossilOrigin-Name: e6c7683c7503ac743d1d476c60c31f887b7ad829e26e812c25acdd4366044db8
2021-03-03 16:00:26 +00:00
drh
fad1ad0526
Fix a harmless assertion fault resulting from [6e6b3729e0549de0] that was
...
discovered by dbsqlfuzz. Enhance .selecttrace output to show omitted
ORDER BY clauses. New dbsqlfuzz test cases added.
FossilOrigin-Name: 27a0388ad616f80e8dcc986c247a5c23a8565dae9081b04ff85bac0d357e531b
2021-03-03 14:07:52 +00:00
dan
3083d5f5ea
Fix a problem with using ALTER TABLE commands on database schemas that contain expressions of the form "<expr> NOT NULL" or "<expr> IS NULL" that can be evaluated at prepare time.
...
FossilOrigin-Name: d2630ffafa077b8cfd75110b6b73da30f780edc920d2788769a4dc747f09d3f6
2021-03-03 11:00:31 +00:00
drh
bb05976dac
Cast a string size variable to 64-bit to avoid any possibility of
...
integer overflow.
FossilOrigin-Name: a5940294b2ac8d157d7fa72f65ee70b713f7feb8a0a98d7f47e71acd1b6942b1
2021-03-02 21:07:41 +00:00
drh
898ec7927a
Limit the size of the exponent input in the second argument to the
...
ieee754() SQL function, to avoid integer overflow.
Ticket [22dea1cfdb9151e4].
FossilOrigin-Name: 99aab32da14cc76beb5c1823a70bdeab144459398d61c42a858be4d6868d361e
2021-03-02 16:27:04 +00:00
dan
730629680a
Change the timeout for test case "valgrindfuzz" from 600 seconds to 1200.
...
FossilOrigin-Name: 7c6aa6f38403931df7940c7acfeba4e2f8099a419222fcab2a3c959ccae90e40
2021-03-02 13:50:56 +00:00
dan
eefef9ae80
Do not run test file windowpushd.test as part of the "no_optimization" permutation.
...
FossilOrigin-Name: 275a75aa82bf5d2366fd4020066d7b9fbb93a955ac9ec15dc7d5b8bfa29074e4
2021-03-02 13:36:37 +00:00
drh
1b1a1dda9e
Add ALWAYS() to an always-true conditional.
...
FossilOrigin-Name: fa3506db2051ceade8aa535d92c0900b3cfdd8850c6d00adedeb1ebfaf6f885f
2021-03-02 00:42:46 +00:00
drh
2d7a691fba
Add #ifndef macros so that the build works again with
...
-DSQLITE_OMIT_AUTHORIZATION and -DSQLITE_OMIT_WINDOWFUNC.
FossilOrigin-Name: 9400bdc60294be6a938025d481e50aad9af246e64f38fafecc6ca4f24112a98c
2021-03-01 21:43:25 +00:00
dan
531d01cae0
Fix a couple of memory-sanitizer complaints that could be triggered by a corrupt database.
...
FossilOrigin-Name: 39c8686cabe6c437ba4860aade49a701c4f5772b97d9fbe6cb9a394e85b9c092
2021-03-01 16:16:59 +00:00
dan
1f9f576695
Fix another msan complain triggered by a corrupt database.
...
FossilOrigin-Name: d235d406283191fc7b9e1299be602f1e8be6f36cee8b183cf85c8660519a1c3b
2021-03-01 16:15:41 +00:00
dan
1e06c70eb0
Initialize extra field in PgHdr1 to fix an msan complaint.
...
FossilOrigin-Name: 4cb2ea5795b0c0678665fd89bd560209beaab8a756fe00335dbfd07493b0542d
2021-02-28 08:24:56 +00:00
dan
a3944bc4fe
Add OOM test case associated with the fix in the previous commit.
...
FossilOrigin-Name: a631c38d22bc00d38b0f112a623fb24c0e03a962f661ffe0931dad32fd31ba31
2021-02-27 15:32:02 +00:00
drh
676c869d52
Remove a NEVER() that might sometimes be tree following an OOM.
...
FossilOrigin-Name: ccb8cf5256d01b3ff13e75e1471b1afb0055ec2c344ba886f98b83d47eba00f8
2021-02-27 15:12:24 +00:00
dan
15de3ce9ab
Fix a segfault that could occur when optimizing a NOT NULL constraint against an IPK column of a sub-query.
...
FossilOrigin-Name: e4d1970ef17b2330f78c750d71d625c2997f79ed1445d0351ec32b482485a954
2021-02-26 21:39:34 +00:00
dan
eca6d60bfa
Attempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column with a NOT NULL constraint.
...
FossilOrigin-Name: de9c86c9e4cdb34f4b7d65f160d1e589fb969bbf64c66d2b24c502d1ee424dbb
2021-02-26 20:39:08 +00:00
dan
8ddf686267
Attempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column with a NOT NULL constraint.
...
FossilOrigin-Name: 5ecd842555009ce27ee6390325ac5c2504143474b12b730933f0833b3dad788a
2021-02-26 20:14:32 +00:00
dan
4b17455ab2
Minor simplification in resolve.c.
...
FossilOrigin-Name: 310dac342e7b1f9b5a5df6a9d598e85d5fef59bba9307d9230baf77c8f2351a2
2021-02-26 15:20:17 +00:00
dan
b3617e9d2d
Fix test case in altercorrupt.test so that it works with SQLITE_ENABLE_OVERSIZE_CELL_CHECK builds.
...
FossilOrigin-Name: 062b338ff2ea71633b4fb3c75c6a47b5fc4fe9c2a72daacd987d1eca0bda5217
2021-02-25 18:28:11 +00:00
dan
a4656e390a
Fix a problem with UPDATE and DELETE statements that use both INDEXED BY and LIMIT clauses in SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds.
...
FossilOrigin-Name: cc2b4b38668bd32ebd8cf2e0d244eef2a6c7e0a1ee0a34c9c43eaf25c9cc09ae
2021-02-25 18:23:39 +00:00
dan
3dc864b575
Fix handling of INSERT on views with implicitly named hidden columns in SQLITE_ENABLE_HIDDEN_COLUMNS builds.
...
FossilOrigin-Name: 15795a96a8b3f4ea368b3eb29a4ff8d1b4b33ebb2bff2a5ccb045b8f01f9f99b
2021-02-25 16:55:47 +00:00
dan
ce5de60ff9
Ensure that tests like "rbu.test" and "notify2.test" that are only run by specific configurations during release testing are run for both release and debug versions of the tests.
...
FossilOrigin-Name: 911df43f98297bf645688dc51e988106a0297cb60bb97dde699c2848404fcf72
2021-02-25 15:50:19 +00:00
dan
e9cfe87843
When a sub-transaction is released, if no pages required by containing sub-transactions were journaled, truncate the statement journal. This prevents out of control statement journal growth in some cases.
...
FossilOrigin-Name: 23ca23894af352ea351c9efcdd7d86b82455f4c81b6001052a6d13aa2d705e84
2021-02-23 16:40:47 +00:00
dan
601ec240a9
Allow WHERE terms to be pushed down into sub-queries that contain window functions, provided that the WHERE term is made up of entirely of constants and copies of expressions found in the PARTITION BY clauses of all window functions in the sub-query.
...
FossilOrigin-Name: 20689468100aed264877111367b42837ca19e63e717fed2ebd4b20b908f13178
2021-02-23 15:53:22 +00:00
dan
34a224a13b
Further tests for the push-down optimization with window functions.
...
FossilOrigin-Name: 4b089f70117bfb440eaefd830c05576be0cc624d9d6018c869270dc68e44513e
2021-02-23 15:36:06 +00:00
dan
903fdd4834
Allow WHERE terms to be pushed down into sub-queries that contain window functions, provided that the WHERE term is made up of entirely of constants and copies of expressions found in the PARTITION BY clauses of all window functions in the sub-query.
...
FossilOrigin-Name: dac51f303bba1a0aac7768c688b0c134deb7641062cce2071d546f2d8f241dec
2021-02-22 20:56:13 +00:00
drh
dee1cb3006
Add a few simple test cases for MATERIALIZED and NOT MATERIALIZED.
...
FossilOrigin-Name: 64878124c160f790bc5861fd799ada03bd7db0c4426b8abc3b7ad1f7aa181168
2021-02-22 19:57:58 +00:00
drh
c3b93d9e59
Implement the MATERIALIZED and NOT MATERIALIZED hints on common
...
table expressions.
FossilOrigin-Name: b5a0778cc5a98a864bea72670f83262da940aceb91fa4cdf46ec097337a38a95
2021-02-22 16:42:09 +00:00
dan
f43fef29bb
When a sub-transaction is released, if no pages required by containing sub-transactions were journaled, truncate the statement journal. This might prevent out-of-control statement journal growth in some cases.
...
FossilOrigin-Name: e36327fb22db08763a82fb517407ff5ab0dbc053953098033e7e50796a777810
2021-02-22 15:44:45 +00:00
drh
606411bf91
Add an ALWAYS() on a branch that is now unreachable.
...
FossilOrigin-Name: ace54c5bd50176db7c60b7e3cf9293a86d9ecf2fea897467044020b9684c0af3
2021-02-22 14:25:40 +00:00
drh
17267fe393
Fix inverted logic regarding the materialization hint on the push-down
...
optimization.
FossilOrigin-Name: b66a49570852cf118a372a6ac44be3070cf9b4254696f16315b7c79a614e6c35
2021-02-22 11:07:25 +00:00
drh
745912efac
Add the AS MATERIALIZED and AS NOT MATERIALIZED syntax that works like it
...
does in PostgreSQL.
FossilOrigin-Name: a6bb272ec0c758ab069bfc07443624e0ea7910b1f23224ee078d050fa3ccf068
2021-02-22 03:04:25 +00:00
drh
a79e2a2d28
Materialize any CTE that is used more than once.
...
FossilOrigin-Name: ba59159fbe6b83fb6d79fbfee22d983768b0ebbaac7e99d2ac66c810e5e04100
2021-02-21 23:44:14 +00:00
drh
7601294ad3
Rename the "struct SrcList_item" object to the more succinct "SrcItem".
...
This is a symbolic change only. The logic is unmodified.
FossilOrigin-Name: bfd5bf2c73110fcb36db9ba2a949ff516131fbd3e89325f88fe9f5c2b4ed87b2
2021-02-21 21:04:54 +00:00
drh
5abe1d3d53
Simplified resolution of CTE names. Slightly faster and about 100 bytes
...
of code smaller.
FossilOrigin-Name: 0d2c992f3622a6272ca4a3caff6b21f619fe976b8df8b34eff066086f8df2202
2021-02-21 01:19:42 +00:00
drh
1862271f7c
Performance improvement in resolving the INDEXED BY index name for the common
...
case where there is no INDEXED BY clause.
FossilOrigin-Name: 554b286ac208168bde91c6c6034cc7087410def76fce650b519661b2ee2c61b7
2021-02-20 21:20:54 +00:00
dan
1e0cfd7184
Fix a case where FTS3/4 could pass a NULL pointer to memcpy() when handling a corrupt db.
...
FossilOrigin-Name: 68bb541a39833d7d4bf41aa91cb6cd9c98757d1fc8236299d09db7e9b14d8ec9
2021-02-20 19:22:32 +00:00
dan
1e25d20cca
Update sqlite3changeset_apply_v2() so that it handles no-op UPDATE changes (UPDATE changes that modify no columns). This fixes a regression introduced by [e4ccfac09b]. Also modify sqlite3rebaser_rebase() so that it does not output changesets containing such UPDATEs.
...
FossilOrigin-Name: 0288a8013e00594e716a5fb0d9f684dcfeb03e877650630e2736565fa6261290
2021-02-20 18:02:37 +00:00
drh
f824b41e64
Break out the Cte object from the With object. This will make it simpler
...
to add new kinds of Cte objects (ex: DML statements) and/or MATERIALIZED
keywords in the future. It brings trunk into closer alignment with the
experimental as-materialize branch.
FossilOrigin-Name: f03efe905d7b40fb25f9f78b874bb56c6d6ccacb60f86b3b199d430d5eade8d2
2021-02-20 14:57:16 +00:00
drh
271d7c2677
Simplification to where.c manually cherrypicked from the as-materialize
...
branch.
FossilOrigin-Name: 03805a6117c813a33f9bca68bf4d9912997d6abd88ac9b3cb844c5d93ec68049
2021-02-20 13:36:14 +00:00
dan
578277c257
Fix another problem handling corrupt database files in the ALTER TABLE DROP COLUMN code.
...
FossilOrigin-Name: 9edf2ddc4799c8830c4b7b91d7aacee50029a4b9db329fd4c5674fbedea33034
2021-02-19 18:39:32 +00:00
dan
d97471e1ad
Add tests for ALTER TABLE DROP COLUMN commands.
...
FossilOrigin-Name: 05dbea9b26bdcb096194dc531816333f3784eca50b133fe3efede6ab0d233472
2021-02-19 15:34:16 +00:00
dan
be2ee38283
Add support for "ALTER TABLE ... DROP COLUMN ..." commands.
...
FossilOrigin-Name: c844a331e78949850fde8ed95058cb34f863566944bc9e92e3ae042768f130e1
2021-02-19 14:32:58 +00:00
dan
f4a72788a4
Fix a crash that could occur in ALTER TABLE DROP COLUMN if the sqlite_schema table was corrupt.
...
FossilOrigin-Name: 126ee1ec4f3565c0cccca98885fa3665a641ea3df251511de16eed2a1c396124
2021-02-19 14:13:40 +00:00
drh
60fe2352f5
Omit an branch made unreachable by the improved error message from dropping
...
the last column of a table.
FossilOrigin-Name: c5719fc5aa04c50bb01533f1cedb73dc80c4bf5315ff6a7206c8a10504afca8b
2021-02-19 09:46:52 +00:00
drh
329cb9eb88
The COLUMN keyword in ALTER TABLE DROP COLUMN is optional.
...
FossilOrigin-Name: a22f87fb6c43dd6217691c8dd1cdcd7880068024fb779ca8a5def068d72c3e6b
2021-02-19 09:36:50 +00:00
drh
239c84fc62
Give a better error message on DROP COLUMN when attempting to drop
...
the last column of a table.
FossilOrigin-Name: 5e1f362bc3e53c60f9e6f771346d10c6e6a6cb3ff1eec5608101f9c5d6d2a5a4
2021-02-19 09:09:07 +00:00