larrybr
68d261d073
Bring in permutations mod.
...
FossilOrigin-Name: 7a1316f32c857b5ec9e50c5d341f977f998dbf404f4758e3fe317fd8ef25f41e
2021-04-17 20:04:40 +00:00
dan
55f36787ea
Do not run external_reader.test as part of permutation "journaltest", as it requires wal mode.
...
FossilOrigin-Name: 9f5f16cf093cd8b8c7649f664eaf2ad8128fd50e182720dbddf05a6d9227c037
2021-04-17 19:59:14 +00:00
larrybr
f5576936f1
Allow more time for perf tests when instrumented. Condition another on feature it needs.
...
FossilOrigin-Name: f0dd9cf2d7045d3634294bcf2722d3d7b0a6c4c3ef713b0f7f54fbe31432027f
2021-04-17 18:43:29 +00:00
drh
48a6aede46
Add new dbsqlfuzz cases to test/fuzzdata8.db.
...
FossilOrigin-Name: d18793e589a4ee7706e994a1f3d24ba7df190467d92fa6ac040258f4debc149d
2021-04-17 18:39:39 +00:00
dan
44918c74cd
Fix cases where code in expr.c was failing to handle OOM failures that occurred while processing sub-select expressions.
...
FossilOrigin-Name: 62efe2eee34fdb147cc456290576d8fc3801487867c78aadd4485f85468d9ffc
2021-04-17 14:42:37 +00:00
drh
7b0d34fe32
Ensure that variables are not used in the WINDOW clause of a query inside
...
of a trigger. dbsqlfuzz d9cf66100064952b66951845dfab41de1c124611
FossilOrigin-Name: 1a341378ab24a5091e6cf03b9e957d11b2bfe5c711835e8c583785f8fa0125d3
2021-04-17 13:46:23 +00:00
larrybr
1929cc0d8a
Add geopoly to $::sqlite_options() and use it to pass more tests.
...
FossilOrigin-Name: 23da5016b66f3947cc902dbe2766ea9f5a00f85312a652b536ab51d657446ab7
2021-04-16 23:43:22 +00:00
drh
de0e1b150c
Performance optimizations in the code generator, especially in name
...
resolution.
FossilOrigin-Name: ab83a99899ceae931b43e0c4b3f8f8b83bc832f1568de5692c0d038c968f8a87
2021-04-16 22:53:57 +00:00
larrybr
453954b0de
Make a test conditioned on feature used.
...
FossilOrigin-Name: 31afda7ac3081d05fc9b6d080abeba1296327d0c480bbb4bc5f65c3168cd34ac
2021-04-16 21:29:07 +00:00
drh
188ba3a979
Add new dbsqlfuzz-generated cases to test/fuzzdata8.db.
...
FossilOrigin-Name: 1ac0a056a07895cc4ae62d01cbba5525402be3af3b8f97fd1dfaba2236ef912b
2021-04-16 19:25:47 +00:00
dan
6c68e55689
Fix another undefined behaviour in fts3 that could follow an OOM error.
...
FossilOrigin-Name: fac3ff857c4abdb44f59849af80d93a5bd4b64f088e5164fb5ad0be8d14748b7
2021-04-16 17:09:58 +00:00
dan
7f2eb8fff2
Avoid signed integer overflow when finding snippets in fts3 by using 64-bit integer offsets.
...
FossilOrigin-Name: 4cc09a872f627f4a2b94345bef07cd49c3ec3627f8d78c1eb091741cdb4ec0b3
2021-04-16 16:55:28 +00:00
drh
197561cd42
Remove an ALWAYS() from a branch in sqlite3ExprAddCollateToken() which can
...
be false following an OOM.
dbsqlfuzz 9e8516bf1e786c84e520ae43141b75b7399f8618.
FossilOrigin-Name: 6af4e6d054efd8445e1010aabd584f36e70dfad0de13bd0e2f1761cad4d9a7d6
2021-04-16 12:33:52 +00:00
drh
19c16c8771
Fix an assert() in whereLoopAddOr() that can be wrong if an OOM occurs in
...
an OR constraint on a virtual table if one of the terms of the OR is an IN
operator. dbsqlfuzz 5ee7350b40014f5a878c5d6e76913a2d619f5146
FossilOrigin-Name: 5cb40e53edcb1e54cde0e54c38a647144bc3158435df0161f95c89732de086e6
2021-04-16 12:13:39 +00:00
dan
11a6e9d9f0
Fix an assert() in fts3 that might fail when handing corrupt records.
...
FossilOrigin-Name: d0e2d6742f314f71562e404980aad20de6b17e0b04c08582c18bbc4fd0360751
2021-04-16 11:25:37 +00:00
drh
81e5a9a6df
Fix the comment on the implementation of the pi() SQL function. No changes
...
to code.
FossilOrigin-Name: 5620bd466eb10fd4daf51af9b88d8221f981dc0ceabfa84a0e1d5c817f635429
2021-04-16 11:05:19 +00:00
drh
34c11e2f4b
Do not invoke sqlite3ExprAffinity() if there is a possibility that the Expr
...
is incomplete due to a prior OOM.
dbsqlfuzz b8a824706914488bd236da51118eb9174ceb870f
FossilOrigin-Name: e8a1515b44380cc52aca1838814ca398012e4e9cf5728d40b404546e812a39b7
2021-04-16 01:03:16 +00:00
dan
9988db8302
Fix a bad interaction between constant propagation and transitive term handling causing patterns like "WHERE unlikely(t1.x=t1.y) AND t1.y=?" to return non-matching rows.
...
FossilOrigin-Name: 2363a14ca723c0343fbe350f6c19787a7a47c2289fd9af136c97a451b53b5226
2021-04-15 19:09:19 +00:00
dan
37d4ec86bf
Add extra test case for OOM handling in where.c.
...
FossilOrigin-Name: 7163de3dea0445bf25dba47a54c50f35bb5c7edc7bdae9630b51c1ca970ec6cf
2021-04-15 13:26:29 +00:00
drh
d784cc893c
Make sure the WhereInfo.pExprMods list is properly cleared when existing
...
sqlite3WhereBegin() early due to an OOM fault.
dbsqlfuzz 1247a51318047aba42e7f6991dfa62577cb7a151.
FossilOrigin-Name: 0e19af72d84f96245cb4a5cfc37232579b6f5fdebd525f8b6515a4f2cc84e273
2021-04-15 12:56:44 +00:00
dan
385b982865
Prevent an assert() from failing if sqlite3_blob_reopen() is called on a blob-handle that has already hit an SQLITE_CORRUPT error.
...
FossilOrigin-Name: b5dc7aba036cfd6d09c68dd17608328063634ca99ff341f97bab2dc2a1f59b11
2021-04-14 15:25:10 +00:00
dan
8505d73dc0
Fix a potential crash when using json_group_array() as a window function.
...
FossilOrigin-Name: 3c266690c753d093c2cb74138a46ed69276d85cd119d687a6858c84211e84eaf
2021-04-14 12:11:39 +00:00
drh
f817189e1b
Fix an assert() in the code generator for expressions so that it is valid
...
even after an OOM.
FossilOrigin-Name: 427e83eb583a4f63650912f078122e7373fe8c7ea11acfdab464d748b4235261
2021-04-14 11:20:44 +00:00
dan
304cbc17c2
Fix an undefined signed integer overflow in fts5.
...
FossilOrigin-Name: e6f0adb00da84561e686a8db83858c7fd6b008756dd1aef807ea68f878ca3db7
2021-04-13 17:45:36 +00:00
drh
3bb9d75aa6
Do not leave a WITHOUT ROWID table without a primary key index structure
...
due to an OOM error. This prevents downstream troubles in the case of
PRAGMA writable_schema=ON.
dbsqlfuzz 69fb32cc82d59b4d790881566e3f6c727e616122
FossilOrigin-Name: 608b6644b932c4d0c26ab870322639deefde4606f9e335575f99995bc7ed08b5
2021-04-13 13:48:31 +00:00
drh
569143c851
The SQLITE_NoSchemaError flag should not apply to OOM errors while parsing the
...
schema.
FossilOrigin-Name: 9cc484ad1a42f0821e53be6df46b1811dc8059e5aaf2f6c3e667105a55893b97
2021-04-13 13:20:55 +00:00
drh
6000e08d33
Earlier detection empty_result_callbacks in sqlite3InitCallbac() to avoid
...
problems with corrupt schemas an writable_schema=ON.
dbsqlfuzz ca4ca43bdb22eab9859de4979aec615af851e111.
FossilOrigin-Name: fb305fe077a0058861427f107957fcc3d2b1443cdd11a7f145df138ca3bb9f4e
2021-04-13 13:01:07 +00:00
drh
b3d2ba7cb0
In the rtreedepth() function, detect OOM when converting a zeroblob() on
...
input. dbsqlfuzz ed23eda7cc3a8a054f85ea19d55c59ba2ca72744.
FossilOrigin-Name: 69f843c8fa6e21500b5777169c3b394453ba818b4e32427428480dca5b4ed615
2021-04-13 12:28:55 +00:00
drh
0e5cd34915
Fix an error in the inversion function for json_group_array().
...
dbsqlfuzz 68a4b0f668b7bc27235e3f1c5cff8a2d94cfa17e.
FossilOrigin-Name: e718a62ed1d5ba9b1404ba67fae1ad731809e2ebd9253edc57d2b34a19fbef24
2021-04-13 01:12:32 +00:00
drh
5cc9daf8a2
Fix a faulty assert() inside sqlite3ExprDup().
...
FossilOrigin-Name: 59812e7ef705226c801f95ec7f78cc931f9957ffb66715607d63874813b280cb
2021-04-12 23:18:18 +00:00
drh
4aab6fae57
Fix an assert() in OP_ParseSchema so that it works even after an OOM.
...
FossilOrigin-Name: 79b883537910274518cadbda7b5088811f59287b9385fc28ab54d837d41b995a
2021-04-12 22:39:46 +00:00
drh
f1f12661c3
Avoid taking the address of a NULL pointer following an OOM in FTS5. Doing
...
so is harmless in actual practice, but it technically UB so we want to
avoid it.
FossilOrigin-Name: 1cfcd9dceb56b5987e6900a36a0ec092f0e1b13a7e754b8c3d8efb943e5bcc66
2021-04-12 18:32:33 +00:00
drh
9920bf975b
Add an assert() to show that the SF_Resolved flag does not get set if
...
errors are being suppressed.
FossilOrigin-Name: f455c5b0bda3d303f9269db37efaa8ff0b356622b2df0a7544f83bb334118180
2021-04-12 17:34:03 +00:00
dan
d487e37367
Fix a segfault that could occur if the ORDER BY clause of a compound SELECT contains a sub-select that uses one or more window functions.
...
FossilOrigin-Name: 5ba15ebb34c3af85ef6c54bbb3acb57176d629cda83774881b2a6467e138e904
2021-04-12 16:59:28 +00:00
drh
ff37491874
Fix the display of SrcList in the sqlite3TreeView debugging routines.
...
FossilOrigin-Name: 28ecb3810b40ca58c2e04a752bbc2234c64c27185aef2cb3fe7c933082dc2578
2021-04-12 12:58:55 +00:00
dan
cd0b245934
Avoid an assert() failure when a compound scalar sub-select is, due to a "WHERE (sub-select) AND (... OR ...)" clause, coded twice by the code generator.
...
FossilOrigin-Name: a4e3f13329332f91a250bc18459fd4100990a1ac0516f8a0a6b21ff117db9795
2021-04-12 12:02:49 +00:00
drh
1d6d737cb7
Fix harmless comment typo in main.c.
...
FossilOrigin-Name: 785a553e71e2ecf108ec4140d470d718ceeb2d03896f7aab36ce10cf0e99e72e
2021-04-12 11:51:32 +00:00
drh
0003d87893
Add NEVER() to a branch that is no longer reachable due to
...
check-in [a1d823f6879ce1ac].
FossilOrigin-Name: 5fda21feda2448de880088f4f53f20875ef02b47172c48091638b80173f983d7
2021-04-11 00:11:56 +00:00
dan
7f65b7af42
Avoid an uninitialized-memory valgrind error by tightening up corruption
...
detection in internal routine defragmentPage().
FossilOrigin-Name: 8096f7aee497f852b1404e13cdc8bafb54fcf6c540cd58addbc01eb2e27011b3
2021-04-10 20:27:06 +00:00
drh
21c7ccb9ba
Add NEVER() to a branch that became unreachable with
...
check-in [58f36af2271517ab].
FossilOrigin-Name: e07ce463967521ab53463b21f80c8f90c337c15c250f69c3fccc1305f54f32df
2021-04-10 20:21:28 +00:00
drh
1fd1cc4433
Avoid invoking sqlite3Atoi64() will a null pointer following an error
...
from ExpandBlob().
FossilOrigin-Name: 780412f2ca7576ce90861b2bd499f953504125b200e9aeae685def4a943f9d2b
2021-04-10 15:34:30 +00:00
dan
677e62aacd
Fix a problem with handling expressions like "(col IS NULL AND <expr1>) OR col == NULL" in WHERE clauses.
...
FossilOrigin-Name: 40852ca8e215e51f63652a67817361b835b6fbbff7f66af50089af91007505f1
2021-04-10 14:49:45 +00:00
drh
050611a79b
Refactor NameContext.nErr into nNcErr to avoid confusion with Parse.nErr.
...
Do not abandon sqlite3ResolveExprList() on nNcErr if nErr is still zero
as we might have hit a problem with ORDER BY resolution that should be a
suppressed error. dbsqlfuzz 41b9dad40919d3549ca7e52d893da81a6dded4ad
FossilOrigin-Name: 7d674970741bd9b228b818c701c1ae010b90cc287a4c60a872f18b66353d164d
2021-04-10 13:37:04 +00:00
drh
d78fe4e1a4
Remove a NEVER() in a corruption detection conditional in allocatePage().
...
dbsqlfuzz 9c61c33802600b2b01dfb09b0386ceb4ade02a19
FossilOrigin-Name: c174f5d32b8c6bbad102065b2d5acae70ddb153f863a2842da836cf7db3f683f
2021-04-09 22:34:59 +00:00
drh
2be1f2afe8
Remove an ALWAYS() that is actually reachable following an OOM on an
...
UPDATE FROM of a virtual table.
dbsqlfuzz aa03237ef7c4a028c7cdaf8bbcde2b62e2bcd36e
FossilOrigin-Name: 49eac38926b3391b185d20fae6588c213f7f020f028173d4a4aa3c7a62b94140
2021-04-09 22:20:20 +00:00
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