Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
100 check-ins occurring around 62f2235adf796c72.
2019-12-15
| ||
00:36 | Abort the OP_Savepoint opcode early if a virtual table xSync method fails, perhaps due to an interrupt. (check-in: 672e749aef user: drh tags: trunk) | |
2019-12-14
| ||
19:55 | When a generated column expression is initially parsed, if it contains errors convert the expression to a simple NULL. This prevents additional pieces of the expression tree that are allocated from lookaside from leaking into the schema, where lookaside allocations are not allowed. (check-in: a89b386056 user: drh tags: trunk) | |
18:08 | Due to the previous change, the p5 parameter to OP_VColumn no longer ever contains extraneous bits, so change a testcase() into an assert() to show as much. (check-in: 5b4a88cd3b user: drh tags: trunk) | |
17:43 | Do not set OP_Column flags on the instructions generated by sqlite3ExprCodeGetColumn() if the opcode generated is not really an OP_Column, which might happen if the column is virtual. Fix for ticket [b439bfcfb7deedc6] (check-in: 2401e04730 user: drh tags: trunk) | |
15:01 | Make the sqlite3ExprCodeTarget() expression code generator routine robust in the face of unknown opcodes - it simply generates a NULL value. (check-in: f8e876c82a user: drh tags: trunk) | |
14:15 | Fix problems in fts3 with processing corrupt records and undefined integer overflows. (check-in: 3b873029ef user: dan tags: trunk) | |
2019-12-13
| ||
23:38 | Fix an utterly harmless "applying zero offset to null pointer" UB warning in sqlite3AtoF(): (check-in: 052fdf5e58 user: drh tags: trunk) | |
22:59 | Initial exploration of blocky APIs, starting with a variant of sqlite3_exec. (Leaf check-in: fd849d5b6a user: numist tags: blocky-exec) | |
21:24 | Patch to the page cache to avoid harmless pointer arithmetic that due to bugs in the STD-C spec is technically UB. This is to fix a harmless UBSAN complaint that OSSFuzz is hitting. (check-in: c29fc21288 user: drh tags: trunk) | |
16:04 | Change the default lookaside configuration to 40 slots of 1200-bytes each. This actually works out to 30 big slots and 93 small slots using the mini-lookaside allocator. We get the same (or better) lookaside coverage but with 72KB less memory per connection. (check-in: 47b71a84d1 user: drh tags: two-size-lookaside) | |
15:48 | Cleanup and performance enhancements for mini-lookaside. (check-in: 7480566843 user: drh tags: two-size-lookaside) | |
12:14 | Merge fixes from trunk. (check-in: 9c471195f6 user: drh tags: two-size-lookaside) | |
11:42 | Ensure that there is a containing SELECT statement when processing a normal aggregate function as if it were a window function. (check-in: c1014e80b2 user: drh tags: trunk) | |
11:32 | *Remove* the macros, not just comment them out. (check-in: e5dc2939d3 user: drh tags: trunk) | |
11:31 | Remove unused macros formerly used to define built-in aggregate functions. (check-in: 3ef0d44edd user: drh tags: trunk) | |
01:12 | Reduce the size of ExprList to 24-bytes per entry, down from 32-bytes per entry. This helps keep lookaside allocations in the mini-size. (check-in: bda92d92bf user: drh tags: two-size-lookaside) | |
00:49 | Tie up the loose ends in the ExprList size reduction. (Leaf check-in: 59d0f3afe5 user: drh tags: two-size-lookaside, exprlist-size-reduction) | |
2019-12-12
| ||
22:11 | Work toward reducing the incremental size of an ExprList object to 24-byte per entry, from 32-bytes (on a 64-bit machine). This helps the new mini-lookaside allocator to run better by avoiding excessive reallocs. The current change mostly works, but still has a few loose ends to tie up. This check-in is merely a snapshot to save my work. (check-in: fdda76cfb0 user: drh tags: two-size-lookaside, exprlist-size-reduction) | |
20:58 | Reduce the number of call sites to dbMallocRawFinish in the case where n > lookaside.sz (check-in: e392e7f228 user: numist tags: two-size-lookaside) | |
20:39 | Fix an issue where malloc could be used to fulfill a small allocation when a large lookaside slot could have beeen used instead. (check-in: 611020e337 user: numist tags: two-size-lookaside) | |
20:22 | Change the name of the Expr.a.zName field to zEName, so that it has a name that is distinct from other fields and variables and is hence easier to grep for. (check-in: d3783357f8 user: drh tags: two-size-lookaside) | |
17:17 | Change the size of a mini-lookaside allocation to a macro (MINI_SZ) rather than a magic number (128). (check-in: 5e1949bca9 user: drh tags: two-size-lookaside) | |
16:49 | Merge enhancements from trunk. (check-in: 6cb053f99b user: drh tags: two-size-lookaside) | |
15:19 | Factor out the conditional (which is only true for rare errors) from the notValid() function in resolve.c, for a performance improvement and size reduction. Also cause failures to set the Expr node to a NULL operator so that it does not cause problems later in case PRAGMA writable_schema=ON has been set. Test cases in TH3. (check-in: c6af9f655b user: drh tags: trunk) | |
02:50 | More efficient implementation of a lookaside allocator that supports mini (in this case, harcoded to 128B) slots. (check-in: b02fdc09c8 user: numist tags: two-size-lookaside) | |
00:20 | Fix goofy string formatting in lemon.c that dates from the K&R-C days. (check-in: 48ba5e5a22 user: drh tags: trunk) | |
2019-12-11
| ||
18:53 | Improved tracing output from the LEMON-generated parser. (check-in: 4d6d2fc046 user: drh tags: trunk) | |
16:22 | Strengthen check-in [83da4d4104ee1870] by ignoring *all* WHERE-clause constraints for a virtual table that is the right table of a LEFT JOIN, as such constraints are never useful. This fixes an issue discovered by Manuel Rigger. (check-in: 840de36df1 user: drh tags: trunk) | |
15:07 | When trying to drop a virtual table that has no xDestroy method, invoke the xDisconnect method rather than doing nothing, to avoid a memory leak. (check-in: 1fa29a5f2a user: drh tags: trunk) | |
14:25 | The xDestroy method of a module might be NULL if the schema is corrupt. (check-in: 0457e7d196 user: drh tags: trunk) | |
2019-12-10
| ||
20:41 | Enhance LEMON to provide the ability to mark a rules as one that will never reduce due to intervention of actions. Use this new capability to designate the EXPLAIN rule as NEVER-REDUCES. (check-in: 136cdefb2f user: drh tags: trunk) | |
18:10 | Use a statement journal on a CREATE VIRTUAL TABLE statement in case the VCreate opcode fails. (check-in: aa3b0eb8c3 user: drh tags: trunk) | |
15:05 | Fix parser bugs: require a semicolon after an EXPLAIN command. (check-in: 707a058a22 user: drh tags: trunk) | |
03:40 | Avoid a buffer overread in fts5 that could occur when parsing corrupt configuration records. (check-in: 355afd77df user: dan tags: trunk) | |
02:48 | Set the affinity of regular columns prior to computing the values of generated columns. Ticket [d7c3f125c925c522] (check-in: d47d66e3d3 user: drh tags: trunk) | |
2019-12-09
| ||
19:44 | Rename a local variable to avoid masking a function parameter and thus causing a harmless compiler warning. (check-in: f065cf003b user: drh tags: trunk) | |
19:29 | Add a NEVER() to the ALTER TABLE fix in check-in [1d2e53a39b87e364] (check-in: c7309ed3c7 user: drh tags: trunk) | |
18:22 | The previous check-in was not quite correct, and introduced a new problem with the USING clause. Use this version instead. (check-in: ed28aaa485 user: drh tags: trunk) | |
17:14 | Ensure that the SrcList_item.colUsed field is set correctly (set to have a 1 for all columns of the table) when a generated column appears in the USING clause of a join. (check-in: 1923efb283 user: drh tags: trunk) | |
15:52 | Fix the NOT NULL verification logic in PRAGMA integrity_check so that it works for generated columns whose value is the result of a comparison operator. Ticket [bd8c280671ba44a7] CVE-2019-19646. (check-in: f3b39c71b8 user: drh tags: trunk) | |
14:34 | Fix a gramfuzz find. If a partial index that does not reference any column of its table is used by an UPDATE statement in one-pass mode, then avoid the use of OP_DeferredSeek since the seek might not be resolved prior to the OP_Delete and OP_Insert that implement the UPDATE. (check-in: e3398c5ffb user: drh tags: trunk) | |
08:13 | Avoid infinite recursion in the ALTER TABLE code when a view contains an unused CTE that references, directly or indirectly, the view itself. (check-in: 1d2e53a39b user: dan tags: trunk) | |
02:20 | Fix possible null pointer dereferences in the fts5_expr() scalar function. (check-in: c5d4414359 user: dan tags: trunk) | |
2019-12-08
| ||
00:06 | Fix incorrect column-usage accounting associated with generated columns and added by check-in [6601da58032d18ae]. Fix for ticket [b92e5e8ec2cdbaa1]. (check-in: 9d75e1ccc7 user: drh tags: trunk) | |
2019-12-07
| ||
13:42 | Correctly deal with multi-row VALUES clauses that contain window functions. (check-in: 26d991f214 user: drh tags: trunk) | |
12:13 | Ignore type affinity for auxiliary columns in RTREE as it is too error-prone to try to parse out the type from other constraints. Ticket [8bf76328ac940d52] (check-in: 7fa664ea0e user: drh tags: trunk) | |
00:22 | Fix a problem with foreign keys and generated columns discovered by Manuel Rigger. (check-in: 27c0fdab1b user: drh tags: trunk) | |
2019-12-06
| ||
19:07 | Early detection and reporting of too few columns in an rtree CREATE VIRTUAL TABLE statement. (check-in: ef73107f47 user: drh tags: trunk) | |
13:10 | In the rtree extension, actively suppress extra tokens on the column names, and be pedantic about column affinities. Ticket [367a86e28859f1ff] (check-in: 97fb5a72f9 user: drh tags: trunk) | |
11:48 | The check-in [b7810062ec2489e1] was not quite right in that it allowed an oversized shift operation (which is UB in C) on some obscure inputs. OSSFuzz found the problem for us overnight. (check-in: 62f2235adf user: drh tags: trunk) | |
01:38 | Further enhancements to RTREE, following up to check-in [f898d04cf272ef01] so that constraints are allowed to be compared to strings that look like numbers. Ticket [aa573a787b8f1fdf] (check-in: 32772dfd50 user: drh tags: trunk) | |
01:23 | Do not allow UPSERT of a view. (check-in: ebf897e861 user: drh tags: trunk) | |
2019-12-05
| ||
21:46 | Fix to the rowvalue logic that avoids disabling rowvalue inequality contraints on a virtual table when the virtual table sets the omit flag. The logic has been incorrect since row-values were added. However, this does not come up often as very few virtual tables implement inequality constraints using the omit flag. Ticket [f096d191b6641daa] (check-in: b7810062ec user: drh tags: trunk) | |
18:29 | Documentation update: Clarify that the sqlite3_index_info.aConstraintUsage.omit flag is a hint only and that the code generator is not obligated to follow the hint. (check-in: 7d3e3f6e7e user: drh tags: trunk) | |
17:31 | Additional debugging information printed with the ".wheretrace 0x100" option. No changes to normally delivered code. (check-in: fc72ec52c9 user: drh tags: trunk) | |
14:42 | Make sure the rowid of an RTREE virtual table has integer affinity. Ticket [9fe487ba3c064b4e] (check-in: 7ae8c0d52f user: drh tags: trunk) | |
14:31 | Fix a problem in ALTER TABLE that could occur if an index, view or trigger in the schema features an expression of the form ((SELECT ...) IN ()) where the SELECT statement uses a CTE. (check-in: 7e5ad8e0ab user: dan tags: trunk) | |
13:34 | Be strict about type enforcement on rowid look-ups in the RTREE extension. Ticket [30e2c183b6b356e4] (check-in: d43e0efb96 user: drh tags: trunk) | |
00:44 | Enhance the RTREE extension so that it give correct query results even if the query uses non-numeric constraints. Ticket [a55ab6d97d01ecbc] (check-in: f898d04cf2 user: drh tags: trunk) | |
2019-12-04
| ||
19:45 | Window functions are never constant. (check-in: 35f0b5a8c7 user: drh tags: trunk) | |
15:08 | Ensure that an ALWAYS() in the rename logic really is always true, even for faulty inputs. (check-in: 54410f0e77 user: drh tags: trunk) | |
14:26 | Fix an assert() failure that could occur in ALTER TABLE code when the schema contains a view that uses a CTE. (check-in: 75b04a4b0d user: dan tags: trunk) | |
03:46 | Fix a buffer overread that could occur in fts3 with corrupt %_stat records. (check-in: e01fdbf9f7 user: dan tags: trunk) | |
03:31 | Fix an incorrect NEVER() macro. (check-in: 96b6a76da0 user: drh tags: trunk) | |
01:42 | Fix a double-free that could occur when a component of a compound SELECT with an ORDER BY clause uses named window definitions. (check-in: 92893b7980 user: dan tags: trunk) | |
2019-12-03
| ||
03:34 | Avoid a crash that could occur when a database containing a table with a temp trigger that has the same name as a temp table is detached. (check-in: c4cb9708d4 user: dan tags: trunk) | |
03:31 | Avoid a harmless zero offset of a null pointer in FTS3, so as to not provoke unnecessary warnings from run-time checkers. (check-in: 85d95abec4 user: drh tags: trunk) | |
02:51 | Avoid computing a zero offset of a null pointer, which though this is technically harmless, is upsetting to pedantic run-time checkers. (check-in: 3ce804e99b user: drh tags: trunk) | |
2019-11-30
| ||
19:29 | Do not allow a term in the WHERE clause of the query to qualify a partial index on the right table of a LEFT JOIN. Ticket [7f39060a24b47353] (check-in: 4066a34da7 user: drh tags: trunk) | |
2019-11-29
| ||
13:01 | Add comments in the parse.sql file to help demonstrate how rules are encoded. (check-in: 2c4f714892 user: drh tags: trunk) | |
12:51 | Fix the parse.sql output file so that it is readable into a database where foreign keys are enforced. (check-in: 3a82c554c3 user: drh tags: trunk) | |
2019-11-27
| ||
20:40 | More details on the comment justifying the aleged data race in the WAL-mode checkpoint logic. (check-in: 0fab65c79f user: drh tags: trunk) | |
12:03 | Fix obsolete comment. No changes to code. (Leaf check-in: 0ff59edbbb user: drh tags: reuse-shm) | |
2019-11-26
| ||
14:24 | Fix various documentation typos suggested by Mark Benningfield. No changes to code. (check-in: 08f09dc4f9 user: drh tags: trunk) | |
11:10 | Fix to check-in [5d9a369301a65f32] so that it compiles without SQLITE_DEBUG. (check-in: fefe2d0467 user: drh tags: trunk) | |
02:22 | Add the new -S option to the lemon parser generator to cause it to output SQL that describes the input grammar. (check-in: 4dbd398d64 user: drh tags: trunk) | |
02:03 | Fix an assert() in fts3 that could fail due to corrupt database records. (check-in: 5d9a369301 user: dan tags: trunk) | |
2019-11-25
| ||
23:55 | Experimental file-controls for controlling the use of the -shm file. (check-in: 12b8fa2336 user: drh tags: reuse-shm) | |
04:15 | Modify journal3.test so that it can handle Tcl command "file attr <file> -perm" returning octal values in either "00755" or "0o755" format. (check-in: b0b655625c user: dan tags: trunk) | |
00:07 | Minor enhancements to the TclKit download tool. (check-in: 75e31b1d56 user: mistachkin tags: trunk) | |
2019-11-23
| ||
16:34 | Abort the window function tree rewrite early following an OOM. (check-in: d66f95a515 user: drh tags: trunk) | |
15:10 | Avoid evaluating PARTITION BY or ORDER BY expressions multiple times for window function queries that use multiple window functions with the same window-definition. (check-in: 57070c68bb user: dan tags: trunk) | |
08:51 | Enhance the path arguments in JSON functions to access "#-N" array indexes. (check-in: ffeec62cb5 user: drh tags: trunk) | |
08:36 | Fix a memory leak in fts5 error handling code. (check-in: de6637e15d user: dan tags: trunk) | |
2019-11-22
| ||
17:37 | Extend the json-path mechanism with array indexes of the form "#" or "#-n" for some positive number "n", to reference the end of an array. (Closed-Leaf check-in: 35ed68a651 user: drh tags: json-path-enhancement) | |
11:49 | Fix a harmless compiler warning. (check-in: 34343c4b06 user: drh tags: trunk) | |
11:47 | Fix an indentation error and improve the placement of an assert() based on a tweet from Yuri Kotov. (check-in: e6314e386c user: drh tags: trunk) | |
11:38 | Add more test cases from Yongheng Chen and Rui Zhong. (check-in: f24e6ca4f2 user: drh tags: trunk) | |
10:14 | Fix a crash that could occur if a sub-select that uses both DISTINCT and window functions also used an ORDER BY that is the same as its select list. (check-in: bcdd66c169 user: dan tags: trunk) | |
00:42 | Revise the SQLITE_OPEN_NOFOLLOW so that it actually uses O_NOFOLLOW in the open() system call. This backs out the SQLITE_ACCESS_SYMLINK value but adds the new SQLITE_OK_SYMLINK return code from the xFullPathname method of sqlite3_vfs when that routine resolves symbolic links. O_NOFOLLOW is always included in open() system calls for journal files. (check-in: 6a64fb6a2d user: drh tags: trunk) | |
2019-11-21
| ||
20:24 | Add all fuzz-test cases received from Yongheng Chen and Rui Zhong. Also fix a minor problem in gencol1.test cases. (check-in: ac080432b4 user: drh tags: trunk) | |
20:10 | Fix an out-of-bounds array reference in the generated column logic. Problem discovered by valgrind. (check-in: a0ab42f779 user: drh tags: trunk) | |
19:37 | Whenever a generated column is used, assume that all columns are used. (check-in: 6601da5803 user: drh tags: trunk) | |
18:28 | Fix a problem that comes up when using generated columns that evaluate to a constant in an index and then making use of that index in a join. (check-in: 8b12e95fec user: drh tags: trunk) | |
17:14 | Fix a recently introduced memory leak in the test code in test_vfs.c. (check-in: 2d53a30cc2 user: dan tags: trunk) | |
14:20 | Prevent direct and indirect recursive content= options in fts3/4 and fts5. (check-in: 2eb997327c user: dan tags: trunk) | |
2019-11-20
| ||
16:10 | Fix a use-after-free problem in the test suite. No changes to production code. (check-in: 0d1055a5da user: dan tags: trunk) | |
13:31 | Further improve detection of corrupt records in fts3. Also fix an error with check-in [dfcf081d842629a0] (check-in: a0f6d526ba user: dan tags: trunk) | |
12:07 | Changes to extensions and test logic so that the build works with gcc and with -std=iso9899:1999 (check-in: 2575a68c39 user: drh tags: trunk) | |
2019-11-19
| ||
21:22 | Enhancements to DBSTAT: (1) Make name=? queries efficient. (2) Add the ability to aggregate results across each individual btree using the aggregate=TRUE constraint in the WHERE clause. (check-in: a48f6e1759 user: drh tags: trunk) | |