SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

200 check-ins occurring around 5d4c65779d.

2021-04-16
21:29
Make a test conditioned on feature used. (check-in: 31afda7ac3 user: larrybr tags: trunk)
19:25
Add new dbsqlfuzz-generated cases to test/fuzzdata8.db. (check-in: 1ac0a056a0 user: drh tags: trunk)
17:09
Fix another undefined behaviour in fts3 that could follow an OOM error. (check-in: fac3ff857c user: dan tags: trunk)
16:55
Avoid signed integer overflow when finding snippets in fts3 by using 64-bit integer offsets. (check-in: 4cc09a872f user: dan tags: trunk)
15:44
Merge from trunk. (check-in: d762784a46 user: larrybr tags: compile_options)
12:33
Remove an ALWAYS() from a branch in sqlite3ExprAddCollateToken() which can be false following an OOM. dbsqlfuzz 9e8516bf1e786c84e520ae43141b75b7399f8618. (check-in: 6af4e6d054 user: drh tags: trunk)
12:13
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 (check-in: 5cb40e53ed user: drh tags: trunk)
11:25
Fix an assert() in fts3 that might fail when handing corrupt records. (check-in: d0e2d6742f user: dan tags: trunk)
11:05
Fix the comment on the implementation of the pi() SQL function. No changes to code. (check-in: 5620bd466e user: drh tags: trunk)
10:25
Dial back assumptions on compile option defaults to reflect actual conditionals. (check-in: cb3127725d user: larrybr tags: compile_options)
01:03
Do not invoke sqlite3ExprAffinity() if there is a possibility that the Expr is incomplete due to a prior OOM. dbsqlfuzz b8a824706914488bd236da51118eb9174ceb870f (check-in: e8a1515b44 user: drh tags: trunk)
2021-04-15
23:43
Merge from (forked) trunk. Handle compile options that differ from default by being 0. (check-in: 6eb83f83d2 user: larrybr tags: compile_options)
19:09
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. See forum post c38462ab5e. (check-in: 2363a14ca7 user: dan tags: trunk)
13:26
Add extra test case for OOM handling in where.c. (check-in: 7163de3dea user: dan tags: trunk)
12:56
Make sure the WhereInfo.pExprMods list is properly cleared when existing sqlite3WhereBegin() early due to an OOM fault. dbsqlfuzz 1247a51318047aba42e7f6991dfa62577cb7a151. (check-in: 0e19af72d8 user: drh tags: trunk)
00:26
Bring pragma compile_options up to date. And make mkctimec.tcl help do so. (check-in: 63ea3e298c user: larrybr tags: compile_options)
2021-04-14
15:25
Prevent an assert() from failing if sqlite3_blob_reopen() is called on a blob-handle that has already hit an SQLITE_CORRUPT error. (check-in: b5dc7aba03 user: dan tags: trunk)
12:11
Fix a potential crash when using json_group_array() as a window function. (check-in: 3c266690c7 user: dan tags: trunk)
11:20
Fix an assert() in the code generator for expressions so that it is valid even after an OOM. (check-in: 427e83eb58 user: drh tags: trunk)
2021-04-13
18:39
Fix a problem with handling expressions like "(col IS NULL AND <expr1>) OR col == NULL" in WHERE clauses. Reported at https://sqlite.org/forum/forumpost/1c4f2fdcc4. (check-in: e8c7bd34d0 user: drh tags: branch-3.35)
17:45
Fix an undefined signed integer overflow in fts5. (check-in: e6f0adb00d user: dan tags: trunk)
13:48
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 (check-in: 608b6644b9 user: drh tags: trunk)
13:20
The SQLITE_NoSchemaError flag should not apply to OOM errors while parsing the schema. (check-in: 9cc484ad1a user: drh tags: trunk)
13:01
Earlier detection empty_result_callbacks in sqlite3InitCallbac() to avoid problems with corrupt schemas an writable_schema=ON. dbsqlfuzz ca4ca43bdb22eab9859de4979aec615af851e111. (check-in: fb305fe077 user: drh tags: trunk)
12:28
In the rtreedepth() function, detect OOM when converting a zeroblob() on input. dbsqlfuzz ed23eda7cc3a8a054f85ea19d55c59ba2ca72744. (check-in: 69f843c8fa user: drh tags: trunk)
01:12
Fix an error in the inversion function for json_group_array(). dbsqlfuzz 68a4b0f668b7bc27235e3f1c5cff8a2d94cfa17e. (check-in: e718a62ed1 user: drh tags: trunk)
2021-04-12
23:18
Fix a faulty assert() inside sqlite3ExprDup(). (check-in: 59812e7ef7 user: drh tags: trunk)
22:39
Fix an assert() in OP_ParseSchema so that it works even after an OOM. (check-in: 79b8835379 user: drh tags: trunk)
18:32
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. (check-in: 1cfcd9dceb user: drh tags: trunk)
17:34
Add an assert() to show that the SF_Resolved flag does not get set if errors are being suppressed. (check-in: f455c5b0bd user: drh tags: trunk)
16:59
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. (check-in: 5ba15ebb34 user: dan tags: trunk)
12:58
Fix the display of SrcList in the sqlite3TreeView debugging routines. (check-in: 28ecb3810b user: drh tags: trunk)
12:02
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. (check-in: a4e3f13329 user: dan tags: trunk)
11:51
Fix harmless comment typo in main.c. (check-in: 785a553e71 user: drh tags: trunk)
2021-04-11
00:11
Add NEVER() to a branch that is no longer reachable due to check-in [a1d823f6879ce1ac]. (check-in: 5fda21feda user: drh tags: trunk)
2021-04-10
20:27
Avoid an uninitialized-memory valgrind error by tightening up corruption detection in internal routine defragmentPage(). (check-in: 8096f7aee4 user: dan tags: trunk)
20:21
Add NEVER() to a branch that became unreachable with check-in [58f36af2271517ab]. (check-in: e07ce46396 user: drh tags: trunk)
15:34
Avoid invoking sqlite3Atoi64() will a null pointer following an error from ExpandBlob(). (check-in: 780412f2ca user: drh tags: trunk)
14:49
Fix a problem with handling expressions like "(col IS NULL AND <expr1>) OR col == NULL" in WHERE clauses. Reported at https://sqlite.org/forum/forumpost/1c4f2fdcc4. (check-in: 40852ca8e2 user: dan tags: trunk)
13:37
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 (check-in: 7d67497074 user: drh tags: trunk)
2021-04-09
22:34
Remove a NEVER() in a corruption detection conditional in defragmentPage(). dbsqlfuzz 9c61c33802600b2b01dfb09b0386ceb4ade02a19 (check-in: c174f5d32b user: drh tags: trunk)
22:20
Remove an ALWAYS() that is actually reachable following an OOM on an UPDATE FROM of a virtual table. dbsqlfuzz aa03237ef7c4a028c7cdaf8bbcde2b62e2bcd36e (check-in: 49eac38926 user: drh tags: trunk)
20:50
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. (check-in: 09c96b4c02 user: dan tags: trunk)
2021-04-08
20:29
Fix a use-after-free error that could occur when processing "SELECT aggregate(DISTINCT <expr>)..." queries. (check-in: 0e4789860b user: dan tags: trunk)
19:56
Remove an ALWAYS() that might be false under very unusual circumstances. dbsqlfuzz 300261f469ace7ecc57ed32ea7b0de3ea9d7dbf. Test case in TH3. (check-in: 466f508973 user: drh tags: trunk)
19:39
Handle the corruption fixed by the previous commit in a different way so as to also fix dbsqlfuzz crash 753de0a0ac5b25b18f1e4d41e650d3333cdc270c. (check-in: cb27ce2509 user: dan tags: trunk)
15:19
Handle a special case of corruption that can present if "PRAGMA writable_schema=1" is set. Fix for dbsqlfuzz test case 6229ad63de49e3ba0630aaf0058868f36008bcca. (check-in: 58f36af227 user: dan tags: trunk)
14:15
Harden the filter_over grammar rule against OOM faults. dbsqlfuzz e47c54502a9c36778a5ed553199d5870e2ebd9f2 (check-in: f375f541ef user: drh tags: trunk)
13:52
Remove an incorrect assert() from sqlite3EndTable(). dbsqlfuzz 4af45bcda779592449b1985433bca90b0e683b9b. (check-in: 38a1085cbd user: drh tags: trunk)
13:41
Fix an obscure memory leak in FTS3. dbsqlfuzz 26a51001beeff35649d2e328b05ec06f93c577a5 (check-in: be7cd9ebb1 user: drh tags: trunk)
2021-04-07
18:17
Do not allow the use of rowid for views and subqueries unless compiled with -DSQLITE_ALLOW_ROWID_IN_VIEW. (check-in: a2ddb89b20 user: drh tags: trunk)
18:08
Add the SQLITE_ALLOW_ROWID_IN_VIEW option to omitttest.tcl. (Closed-Leaf check-in: 83b8e4c281 user: drh tags: no-rowid-on-view)
17:46
Merge latest changes into this branch. (check-in: 655c28412f user: dan tags: begin-concurrent-report)
17:32
Merge latest trunk changes into this branch. (check-in: 1f3f7e4bf3 user: dan tags: begin-concurrent-pnu)
15:45
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. (check-in: 14b1d56ef8 user: drh tags: no-rowid-on-view)
15:23
Merge version 3.35.4 with this branch. (check-in: 4b4f87913a user: dan tags: reuse-schema-3.35)
15:13
Update a broken assert() on this branch. (check-in: e69f29892e user: dan tags: reuse-schema)
13:20
Unnecessary local variable initialization to fix a harmless compiler warning. (check-in: c22e47c77a user: drh tags: trunk)
12:59
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. (check-in: dd55357833 user: drh tags: trunk)
12:36
Fix an assert in the automatic-index constructor that can be false following an OOM error. dbsqlfuzz ee04d66c627ed5b5301e0ce09e24db47e0f1544e. (check-in: cc6463fe6d user: drh tags: trunk)
12:21
Earlier detection of page 1 on the freelist (which is impossible) and reporting of that as database corruption. dbsqlfuzz 6fe6c504b320be5e3eed66896cb0db28bfb38a93. (check-in: b1bf0d9875 user: drh tags: trunk)
12:02
Fix a possible crash that could occur when executing a drop column operation on a corrupt database schema. (check-in: c337849416 user: dan tags: trunk)
09:31
Fix seg-fault upon appendvfs attempt to open non-existent file. (check-in: 04f6439f4d user: larrybr tags: trunk)
2021-04-06
23:29
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 post 66954e9ece. (check-in: c2f940b028 user: drh tags: trunk)
22:56
Detect OOM earlier in the geopoly extension. dbsqlfuzz 0986e7b020e6137fc6b96331f91d15753d18e42d. (check-in: 7237117595 user: drh tags: trunk)
21:20
Modify the drop column code to handle WITHOUT ROWID tables for which a single column appears more than once in the primary key. (check-in: e0d2507021 user: dan tags: trunk)
19:13
Raise an error if a query tries to access the "rowid" of a view, as views do not have rowids. (check-in: 7a73c6166b user: drh tags: no-rowid-on-view)
18:40
Restructure a loop in window.c to avoid hitting an assert() following an OOM. dbsqlfuzz test case 6ef74a9659de87e9be3d8694ad062c448aa7ef1d. (check-in: 887c19a15b user: dan tags: trunk)
18:02
Update an assert statement that could fail when using "PRAGMA writable_schema = 1" to access a database with a corrupt schema. (check-in: 55cad6f628 user: dan tags: trunk)
17:51
Fix issue with failing --enable-debug --enable-fts5 build. (check-in: e7491acc0c user: dan tags: trunk)
16:55
New test cases added to fuzzdata8.db. (check-in: 039ad662dd user: drh tags: trunk)
16:42
Silence an msan warning triggered by a corrupt database by initializing a local variable in sqlite3Insert(). (check-in: f64deecee1 user: dan tags: trunk)
16:16
Avoid a use-after-free that may occur when accessing a corrupt database schema with "PRAGMA writable_schema = 1" set. (check-in: a1d823f687 user: dan tags: trunk)
14:46
Remove some test routines from release builds of fts5. (check-in: 3088bf15ca user: dan tags: trunk)
13:57
Fix incorrect RETURNING test cases in wherelimit.test (check-in: 20d21ff9be user: dan tags: trunk)
13:56
Earlier detection of OOM errors during window function processing. dbsqlfuzz b08676f5a0437552c95d2a5d7ef285f8c451ea35. (check-in: 8e04f52e32 user: drh tags: trunk)
13:53
Handle "RETURNING rowid" clauses attached to INSERTs on views without causing an assert() to fail. Fixes dbsqlfuzz crash 0081f863d7b2002045ac2361879fc80dfebb98f1. (check-in: 9c5b7386d0 user: dan tags: trunk)
13:03
Further improvements (subsequent to [d91450847a3a3a72]) to handling of attempts to delete a journal using the memdb VFS. dbsqlfuzz ac61dab357279a6a531de067f040e9a4828d2df0. (check-in: a083940642 user: drh tags: trunk)
12:50
Earlier detection and handling of OOM problems. dbsqlfuzz 39f2963ea5559aa3a16e24e0e3cb42aac85a7371. (check-in: 8d46df7313 user: drh tags: trunk)
2021-04-05
22:42
Relax an assertion on the sqlite3WhereEnd() routine after dbsqlfuzz found a counter-example. (check-in: e6b591e765 user: drh tags: trunk)
22:30
Add a missing CORRUPT_DB to an assert in the OP_ResultRow opcode. (check-in: 82f92d79e1 user: drh tags: trunk)
19:23
Adjust the README.md file so that build instructions work for Fossil version 2.12 and later. Forum post 51f28bb701. (check-in: 51f87adc7f user: drh tags: trunk)
19:05
Do not allow floating point rounding errors to cause a window function xInverse() function to be invoked before the corresponding xStep() call. (check-in: 7a19fed4f2 user: dan tags: trunk)
17:50
Fix an assert() that can be false when doing an incremental vacuum on a corrupt database file. dbsqlfuzz cced0668cfd4da4eb2382cb9dd26c17c64aaff76. (check-in: 15b801016f user: drh tags: trunk)
16:20
Avoid coding unindexed WHERE constraints if an equivalent transitive term has already been coded by an outer loop. (check-in: 644bb77f8b user: dan tags: trunk)
13:41
Do not invoke the xDelete method when converting to PRAGMA journal_mode=OFF if the underlying VFS does not support that method. dbsqlfuzz 39d6af88ef5242f866c4f9b21ede330c5c1e36a8. (check-in: d91450847a user: drh tags: trunk)
11:39
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. (check-in: 5045c8a748 user: drh tags: trunk)
2021-04-04
23:56
Fix an assert() in sqlite3BtreeLast() that needs an "|| CORRUPT_DB" term. Dbsqlfuzz case b92b72e4de80b5140c30ab71372ca719b8feb618. (check-in: ad718388a1 user: drh tags: trunk)
14:22
Avoid compile error when SQLITE_OMIT_VIRTUALTABLE defined. (check-in: 0ee0ef476b user: larrybr tags: trunk)
12:52
Make shell .parameter feature type-agnostic. Hush harmless compiler warning. (check-in: 35cf295e02 user: larrybr tags: trunk)
2021-04-03
23:30
Improved robustness to OOM conditions in the window function logic. dbsqlfuzz 0c123f7d80b29beaafc8411c12129e46f7ffdac3. (check-in: 35ff7cbf54 user: drh tags: trunk)
20:35
Take care not to change an SQLITE_NOMEM error into SQLITE_SCHEMA. (check-in: 1f66a85b77 user: drh tags: trunk)
19:23
Fix a crash in handling queries of the form "SELECT aggregate(DISTINCT tbl.col) FROM ... LEFT JOIN tbl ...". Fixes a problem introduced by [ef4ac0ddd297bbd3]. (check-in: 0dcf808ddf user: dan tags: trunk)
2021-04-02
20:53
Merge latest trunk changes with this branch. (check-in: a221625933 user: dan tags: begin-concurrent-report)
20:43
Correctly capture the error when a RETURNING clause appears on an attempt to UPDATE an eponymous virtual table. dbsqlfuzz 486f791cbe2dc45839310073e71367a1d8ad22dd. (check-in: 778a9a6e6f user: drh tags: trunk)
20:40
Merge latest trunk changes into this branch. (check-in: a7e612ee8f user: dan tags: begin-concurrent-pnu)
20:29
Merge latest trunk changes into this branch. (check-in: 9842084230 user: dan tags: begin-concurrent)
19:55
Add experimental SQLITE_FCNTL_EXTERNAL_READER file control. (check-in: e16da5af82 user: dan tags: trunk)
18:59
Fix a problem with the geopoly_bbox() function. (check-in: f3a2eb979f user: drh tags: trunk)
15:20
Version 3.35.4 (check-in: 5d4c65779d user: dan tags: release, branch-3.35, version-3.35.4)
11:59
Fix incorrect RETURNING test cases in wherelimit.test (check-in: 64b0eb7e11 user: drh tags: branch-3.35)
2021-04-01
11:30
When resolving names in the RETURNING clause, do not accept trigger names even within subquires. (check-in: 8541c71b35 user: drh tags: branch-3.35)
2021-03-31
23:56
When resolving names in the RETURNING clause, do not accept trigger names even within subquires. See forum post 34c81d83c9177f46 for context. (check-in: fd4ea3f626 user: drh tags: trunk)
17:49
When resolving column names in the RETURNING clause, do not ignore an incorrect table name qualifier. Raise an error instead. (check-in: 3b916924ce user: drh tags: branch-3.35)
17:42
When resolving column names in the RETURNING clause, do not ignore an incorrect table name qualifier. Raise an error instead. See forum post 85aef8bc01 for context. (check-in: 51d5c50b2f user: drh tags: trunk)
13:51
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. (check-in: 77a30f3f7a user: drh tags: branch-3.35)
13:41
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 ...). (check-in: 2d179f58bf user: drh tags: branch-3.35)
13:31
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. (check-in: c36b43589a user: drh tags: trunk)
11:31
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 ...). (check-in: 8b681b274d user: dan tags: trunk)
2021-03-30
01:57
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]. (check-in: 257e16f7b3 user: drh tags: branch-3.35)
01:52
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]. (check-in: 3039bcaff9 user: drh tags: trunk)
2021-03-29
21:59
Increase the patch number to 3.35.4. (check-in: 4375cec281 user: drh tags: branch-3.35)
21:16
Do not do the EXISTS-to-IN transformation if the sub-select has LIMIT clause. Ticket [de7db14784a08053] (check-in: 3bf8a35716 user: dan tags: branch-3.35)
20:28
Do not do the EXISTS-to-IN transformation if the sub-select has LIMIT clause. (check-in: d07e246f9b user: dan tags: trunk)
20:04
Add "#ifdef SQLITE_DEBUG" blocks around test variables sqlite3_fts5_may_be_corrupt and sqlite3_fts3_may_be_corrupt. (check-in: 004559544e user: dan tags: trunk)
20:01
Simplify the comparison opcodes in the bytecode engine, for a performance improvement. (check-in: f2af5868be user: drh tags: trunk)
19:47
Fix VDBE coverage macros. (Closed-Leaf check-in: ebe100de55 user: drh tags: compare-opcode-opt)
18:53
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. (check-in: 380b46054b user: drh tags: compare-opcode-opt)
14:40
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. (check-in: 93781b6f10 user: drh tags: compare-opcode-opt)
13:47
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. (check-in: bd00df8f07 user: drh tags: compare-opcode-opt)
2021-03-28
23:37
Alternative implementation of the comparison opcode speed-up of check-in [4a8805d9a66dc888] that should pass muster with UBSAN. (check-in: afb18f6454 user: drh tags: trunk)
20:44
Document the "%token" directive for Lemon. This directive has been in place for a while, but was previously undocumented. (check-in: 36624d3740 user: drh tags: trunk)
2021-03-27
20:45
Performance improvement in the comparison opcodes by rewriting an array lookup using pointer arithmetic. This makes gcc 5.4.0 builds with -Os both faster and smaller. Though I suspect that in newer compilers with better optimizers in will probably make no difference at all in the generated machine code. Later: Even though the new code is perfectly valid, and generates correct machine code that is both smaller and faster, UBSAN complains about it in OSSFuzz. So we will take it out. So here was have an example of OSSFuzz coercing a widely used application to become bigger and slower. (Leaf check-in: 4a8805d9a6 user: drh tags: gcc-opt)
16:21
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. (check-in: c23d092f37 user: drh tags: trunk)
2021-03-26
23:59
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. (check-in: f472fd6443 user: drh tags: trunk)
14:04
Merge up all the 3.35.3 changes into the begin-concurrent-pnu-wal2 branch. (check-in: 4d425e641d user: drh tags: begin-concurrent-pnu-wal2)
13:58
Merge the 3.35.3 enhancements into the wal2 branch. (check-in: a1b8d9d213 user: drh tags: wal2)
13:47
Merge patch 3.35.3 into the begin-concurrent-report branch. (check-in: 4ba9fc34c5 user: drh tags: begin-concurrent-report)
13:38
Merge version 3.35.3 changes into the begin-concurrent-pnu branch. (check-in: 7e4c48afcc user: drh tags: begin-concurrent-pnu)
13:31
Merge from 3.35.3 into the begin-concurrent branch. (check-in: 988da36c86 user: drh tags: begin-concurrent)
13:16
Merge in changes for 3.35.3 (check-in: 76f19f4bcf user: drh tags: reuse-schema)
12:12
Version 3.35.3 (check-in: 4c5e6c200a user: drh tags: release, branch-3.35, version-3.35.3)
2021-03-24
23:30
Remove old testcases() macros. Also remove surplus end-of-line whitespace. (check-in: 54b41915ed user: drh tags: trunk)
19:57
Add a comment to snapshotrevert.c warning of the undefined effects reverting to an old snapshot may have on newer readers. (Leaf check-in: 00af3bd254 user: dan tags: snapshot-revert)
19:54
Add experimental extension "snapshotrevert". (check-in: 2d5ee3bad1 user: dan tags: snapshot-revert)
19:44
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. (check-in: 037ca79e60 user: drh tags: trunk)
17:28
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. (check-in: ef4ac0ddd2 user: drh tags: trunk)
17:04
Fix a harmless compiler warning. (check-in: 26b005a95e user: drh tags: trunk)
2021-03-23
22:15
Fix a problem with renaming a column when there is a quoted string immediately following the column name somewhere in the schema. (check-in: 4719fae626 user: dan tags: trunk)
21:02
Add an ALWAYS() on a branch that is always taken. (check-in: 0646d2260c user: drh tags: trunk)
19:39
Test result adjustments in test/misc7.test due to the EQP format change. (check-in: d3ade8c7fe user: drh tags: trunk)
16:34
When doing schema updates, try to convert (incorrect) double-quoted strings into (SQL-standard) single-quoted strings. (check-in: 0770470488 user: drh tags: trunk)
15:39
Tweaks to test/scanstatus.test to account for the new EQP format. (check-in: 2eb28afd01 user: drh tags: trunk)
15:07
Changes to test/analyzeG.test to conform to the new EXPLAIN QUERY PLAN syntax. (check-in: d8afde1bf1 user: drh tags: trunk)
14:33
Fix a test case in bigmmap.test so that it works with the new EXPLAIN QUERY PLAN output format. (check-in: 9ac064fe2a user: drh tags: trunk)
14:27
Add the ExprList.nAlloc column and use it to make the sqlite3ExprListAppend() routine much faster. (check-in: 1d3c4662c2 user: drh tags: trunk)
01:06
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. (check-in: f8e28308fd user: drh tags: trunk)
2021-03-22
18:53
Merge recent fixes from trunk. (Closed-Leaf check-in: 4a343698b4 user: drh tags: eqp-improvements)
16:50
Increase the version number to 3.36.0 to begin the next development cycle. (check-in: 5cee689d64 user: drh tags: trunk)
16:47
This branch for any further patches on 3.35. We anticipate 3.35.3 in a few days. Hopefully there will never be a need for 3.35.4. (check-in: 8de4cb984a user: drh tags: branch-3.35)
2021-03-21
18:23
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. (check-in: 6bb2134027 user: drh tags: trunk, same-as-3.35.3)
17:52
Add a better comment and an assert() on the code inside sqlite3CreateIndex() that REPLACE indexes come at the end of the index list. forum post ceb51d83f7 (check-in: 71e4da136b user: drh tags: trunk)
2021-03-20
23:15
Fix the "box" output mode in the shell when statement returns zero-column rows (for example from "PRAGMA incremental_vacuum"). (check-in: 34439fe3ae user: drh tags: trunk)
15:46
Use the canonical name, not the AS name, when showing the MATERIALIZE or CO-ROUTINE lines for a CTE. (check-in: 1b83e232c4 user: drh tags: eqp-improvements)
15:11
Revise tests cases to align with the new EXPLAIN QUERY PLAN output. (check-in: 50fbd53260 user: drh tags: eqp-improvements)
01:00
Fix a faulty assert() in the OP_SkipScan opcode. dbsqlfuzz a15a9b2ca82e812ad52f62c86cc93dca0dc72f01. Test cases in TH3. (check-in: 1805b9aaf1 user: drh tags: trunk)
2021-03-19
19:44
Further simplification of the EQP output. Only show "SUBQUERY n" if the subquery is anonymous. (check-in: 1fadd30525 user: drh tags: eqp-improvements)
19:09
Merge enhancements from trunk. (check-in: d192d73775 user: drh tags: eqp-improvements)
17:54
In the wholenumber virtual table, increase the cost penalty for running open-loop. This appears to fix the problem reported by forum post b52a020ce4. (check-in: f12b54042e user: drh tags: trunk)
16:29
Dbsqlfuzz found a new way to make that branch in codeVectorCompare reachable. (check-in: 959272c275 user: drh tags: trunk)
15:02
Fix tokenizer's classification of EBCDIC newline. (check-in: 8680f6a8fb user: larrybr tags: trunk)
14:51
Restore the NEVER() that was taken out by [f481636f1a0333c6] because that case is no longer reachable after the previous check-in. (check-in: e3a78b2a23 user: drh tags: trunk)
14:26
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. (check-in: 7420838650 user: dan tags: trunk)
13:53
Correlated CTEs should not generate a materialization subroutine. If they need to be materialized, each use case must be materialized separately. dbsqlfuzz 01b8355086998f0a452cb31208e80b9d29ca739a. (check-in: d72d865d3e user: drh tags: trunk)
13:00
Improved labeling of EXPLAIN QUERY PLAN output. Many test failures due to the different output format. (check-in: 6f8faec022 user: drh tags: eqp-improvements)
2021-03-18
20:04
Add a NEVER() on a branch that was made unreachable by the "circular reference" fix. (check-in: 114d9780ae user: drh tags: trunk)
18:27
Disable a test case requiring generate_series when virtual tables are not available. (check-in: ee86e2f4c5 user: drh tags: trunk)
18:25
Fix a problem causing spurious "<cte>: circular reference" errors to be reported when there is actually a different error in the SQL statement. (check-in: 9981223618 user: dan tags: trunk)
16:52
Increase the patch level to 3.35.3. (check-in: 259b7c3e21 user: drh tags: trunk)
16:47
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]. (check-in: bcbe5308f3 user: drh tags: trunk)
16:36
Remove unnecessary code from sqlite3BtreeClose() and add test cases. (Closed-Leaf check-in: edbfdcaefa user: drh tags: opendup-fix)
15:42
Further sanity checking of the OpenDup cursors. (check-in: 0ec71cf169 user: drh tags: opendup-fix)
14:36
Fix the dbsqlfuzz-derived authorizer in fuzzcheck to avoid creating junk files when running rogue tests. (check-in: eca21a6206 user: drh tags: trunk)
14:31
Automatically close ephemeral b-trees when their last cursor is closed. (check-in: 39b5af18c0 user: dan tags: opendup-fix)
13:55
Fix a problem with the filename normalizer in unix, discovered by dbsqlfuzz. (check-in: ff1eca7fcd user: drh tags: trunk)
13:42
Allow instruction OP_OpenDup to duplicate cursors created by OP_OpenDup, as well as by OP_OpenEphemeral. (check-in: b8de980b2f user: dan tags: opendup-fix)
13:19
New assert statements associated with Ephemeral cursors in the bytecode engine. (check-in: a8ce73e257 user: drh tags: trunk)
12:36
Change the name of the iDataVersion field of Btree to iBDataVersion to make it distinct from Pager.iDataVersion. (check-in: e4c44c0bca user: drh tags: trunk)
2021-03-17
19:52
Update to version 3.35.2 (check-in: 18bec0d263 user: drh tags: reuse-schema)
19:07
Version 3.35.2 (check-in: ea80f3002f user: drh tags: trunk, release, version-3.35.2)
19:05
Fix a harmless compiler warning in the appendvfs.c extension. (check-in: 0ed7eb9115 user: drh tags: trunk)
14:29
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. (check-in: 9520bed2bd user: dan tags: trunk)
11:25
Fix a problem in sqldiff virtual table hanlding to do with tab and other non-space whitespace characters in the CREATE VIRTUAL TABLE statement. (check-in: 1737e4fdfc user: dan tags: trunk)
2021-03-16
18:41
Date/time functions with no arguments (ex: date() or time()) should be non-deterministic. Fix for ticket [2c6c8689fb5f3d2f]. (check-in: 1734c332e7 user: drh tags: trunk)
18:24
Add tests for sqlite_rename_quotefix(). Fix a memory leak in the same. (Closed-Leaf check-in: 531550056c user: dan tags: alter-quotefix)
16:14
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. (check-in: 6446c09610 user: dan tags: alter-quotefix)
14:43
Increase the version number to 3.35.2. (check-in: 7a211b3f09 user: drh tags: trunk)
14:26
Fix recent breakage of the appendvfs extension. (check-in: 7dbbe5b34e user: drh tags: trunk)
14:12
Comment and stylistic changes to the appendvfs.c implementation. (Closed-Leaf check-in: 25c3186aa1 user: drh tags: appendvfs_fix)
11:21
Merge trunk changes into this branch. (check-in: f15d51054a user: dan tags: alter-quotefix)
11:11
Fix a problem with ALTER TABLE RENAME COLUMN when used on a schema that features generated columns. Fix for [a753a856]. (check-in: 0e255b2687 user: dan tags: trunk)
07:06
Fix assert typo. (check-in: 3aedf818c1 user: larrybr tags: appendvfs_fix)
06:50
Merge from trunk. (check-in: eae8236f3b user: larrybr tags: appendvfs_fix)
06:41
Fix appendvfs bug exposed with bigger files, and add tests for such conditions. (check-in: 19b1f53a1c user: larrybr tags: appendvfs_fix)
04:03
Create new branch named "appendvfs_fix" (check-in: 026edd6014 user: larrybr tags: appendvfs_fix)
2021-03-15
20:22
Add internal SQL function sqlite_rename_quotefix(). For converting double-quoted strings to their single-quoted counterparts in DDL statements. (check-in: d874b30046 user: dan tags: alter-quotefix)
19:34
Merge version 3.35.1 into the reuse-schema branch. (check-in: 0fe60a63ae user: drh tags: reuse-schema)
16:53
Version 3.35.1 (check-in: aea12399bf user: drh tags: trunk, release, version-3.35.1)
15:12
Improvements to the built-in ".dump" documentation in the CLI. (check-in: 0915f969f4 user: drh tags: trunk)
15:02
Bump the version number to 3.35.1. (check-in: 184d5a352f user: drh tags: trunk)