/ Timeline
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

100 check-ins occurring around 0f1b9ff9e1e6f13e.

2019-01-08
15:18
Performance improvement on the instr() function, especially for large haystacks. check-in: ce51f1a2 user: drh tags: trunk
14:28
Fix a possible memory leak when trying to UPDATE a corrupt RTREE index. check-in: 63eb803d user: drh tags: trunk
08:02
Fix further problems with fts5 and corrupt databases causing integer overflow. check-in: 673a7dd6 user: dan tags: trunk
2019-01-07
16:52
Fix another potential buffer overread in fts5. check-in: d0e943d9 user: dan tags: trunk
15:57
For SQLITE_ENABLE_PREUPDATE_HOOK builds, disable the optimization for a REPLACE command on a WITHOUT ROWID table with no indexes, triggers or foreign key constraints that causes SQLite to clobber any existing row without separately checking for it. This optimization causes SQLite to omit the expected pre-update-hook callbacks. check-in: 6281ef97 user: dan tags: trunk
2019-01-06
02:06
The page size becomes fixed as soon as page1 from a non-empty database file is read. check-in: 6064584d user: drh tags: trunk
01:46
Give symbolic names to the special prepared statements used to implement incremental blob I/O. Leaf check-in: 2a1cc632 user: drh tags: named-blob-I/O
2019-01-05
21:56
Add the exprNodeCopy() routine that will safely memcpy() an Expr node that might be a size-reduced node. check-in: a874c649 user: drh tags: trunk
21:09
If the OP_ParseSchema opcode with a non-NULL P4 operand does not parse any rows out of the sqlite_master table, that indicates that the sqlite_master table is corrupt, so raise an SQLITE_CORRUPT error. check-in: 598d7358 user: drh tags: trunk
07:17
Fix two more problems with corrupt database handling in fts5. check-in: 444c7c99 user: dan tags: trunk
2019-01-04
23:39
Give a meaningful error on an attempt to use UPSERT on a virtual table, rather than simply not working. check-in: fa98748f user: drh tags: trunk
19:39
Fix the experimental sqlite3_wal_info() API so that it works with wal2 mode. check-in: 079daedb user: dan tags: begin-concurrent-pnu-wal2
19:25
Add the "-external" option to the tserver_test.tcl program.. check-in: ae7c5ed1 user: dan tags: begin-concurrent-pnu-wal2
17:12
Update the "tserver" program to report the amount of time spent in COMMIT commands. check-in: cf494b41 user: dan tags: begin-concurrent-pnu-wal2
14:29
If the ".open" command fails in the CLI, reopen to :memory: so that at least some database is available for subsequent commands. check-in: d7f55c62 user: drh tags: trunk
12:46
Remove debugging pragmas accidently left in by a prior change. check-in: 26275fc7 user: drh tags: trunk
12:35
Fix a typo in a comment used to generate documentation. No functional changes. check-in: ccc4f742 user: drh tags: trunk
11:20
Fix another fts5 assert() that may fail if the database is corrupt. check-in: 0888fc2e user: dan tags: trunk
2019-01-03
19:12
Fix some problems with sqlite3_interrupt() handling in fts5. check-in: c0eb839a user: dan tags: trunk
16:03
Fix the csv01.test module so that it works on systems with \r\n line endings. check-in: 36eaf5a5 user: drh tags: trunk
16:00
Fix the shmlock.test script so that it works with the Windows restriction that UnlockFile must exactly correspond to a prior LockFile. check-in: df939c89 user: drh tags: trunk
15:22
Fix a harmless compiler warning in the CSV extension. check-in: fbcd7256 user: drh tags: trunk
15:17
Fix a problem with the second and subsequent sqlite3rbu_savestate() calls made on an RBU vacuum handle. check-in: bef216df user: dan tags: trunk
00:44
Fix the geopoly_svg() function so that it returns NULL when given zero arguments. check-in: 120cb176 user: drh tags: trunk
2019-01-02
23:49
Fix harmless compiler warnings in the unicode2 logic of FTS3 and FTS5. check-in: 703029ac user: drh tags: trunk
19:46
Merge changes from begin-concurrent-wal2. Also modify the unix-excl shm-locks on this branch so that it is not an error to attempt to release an EXCLUSIVE lock that is not held. check-in: 86685679 user: dan tags: begin-concurrent-pnu-wal2
17:08
Reinstate assert() statements in os_unix.c that were removed to allow wal-mode SHARED locks to be taken over more than one locking slot (this branch no longer does that, so the assert() statements can go back in). check-in: fcb7348b user: dan tags: begin-concurrent-wal2
17:00
Reinstate assert() statements in os_unix.c that were removed to allow wal-mode SHARED locks to be taken over more than one locking slot (this branch no longer does that, so the assert() statements can go back in). check-in: 8445fb6d user: dan tags: wal2
16:30
Merge latest wal2 changes into this branch. check-in: c31eeb3c user: dan tags: begin-concurrent-wal2
16:15
Merge latest trunk changes into this branch. check-in: 87ef68f9 user: dan tags: wal2
16:08
Merge latest trunk changes into this branch. check-in: 5bf212f1 user: dan tags: begin-concurrent
16:01
Add another test case to vacuum-into.test. check-in: 0465d2fc user: dan tags: trunk
15:27
Add test cases for commit [6c6fb1c6]. check-in: 3961995c user: dan tags: trunk
14:34
Raise an error if the argument to VACUUM INTO is an identifier. check-in: 6c6fb1c6 user: drh tags: trunk
2019-01-01
19:17
Fix another fts5 problem caused by a corrupt database. check-in: 911342f7 user: dan tags: trunk
18:00
Ensure that when a new cursor is opened by OP_OpenDup, any existing cursor with the same id opened by a previous OP_OpenDup is closed first. check-in: 5c188361 user: dan tags: trunk
13:59
Fix another case in fts5 where a corrupt database could cause a buffer overread. check-in: f7e6cdc5 user: dan tags: trunk
2018-12-31
21:43
Fix harmless compiler warnings. check-in: b57c545a user: drh tags: trunk
20:39
Additional steps to help ensure that scalar subqueries are only evaluated once even if they are used in multiple places within the query. This fixes a performance regression reported on the mailing list and caused by check-in [531eca6104e41e43] which was a fix for ticket [787fa716be3a7f650c]. Think of this check-in as an improved fix for that ticket. check-in: e1303193 user: drh tags: trunk
20:13
Remove an optimization that can no longer occur, being superceded by the subquery-reuse optimization. Put an assert in place of the optimization to detect if the need for this optimization ever returns. Closed-Leaf check-in: 4fcdc7a2 user: drh tags: reuse-subqueries
18:30
Merge enhancements and bug fixes from trunk. check-in: 9fb646f2 user: drh tags: reuse-subqueries
17:58
Small changes to the OP_OpenEphemeral opcode to improve testability. check-in: f856676c user: drh tags: trunk
16:36
Fix the OP_OpenEphemeral opcode in the bytecode engine so that if it is called a second or subsequent time, it merely clears the existing table rather than creating a new one. Proposed fix for ticket [d0866b26f83e9c55e30de0821f5d]. check-in: 4678cb10 user: drh tags: trunk
2018-12-29
20:47
Merge latest begin-concurrent changes with this branch. check-in: 1625887c user: dan tags: begin-concurrent-wal2
20:42
Fix a problem causing a corrupt pager-cache if an OOM or IO error was encountered while committing a concurrent transacation. check-in: 48ca30f9 user: dan tags: begin-concurrent
16:34
Increase coverage provided by permutation "coverage-wal" on this branch. check-in: f664f940 user: dan tags: begin-concurrent-wal2
14:23
Additional small performance increase and size reduction to the sqlite3VdbeMakeLabel() mechanism. check-in: 1bdee199 user: drh tags: trunk
02:26
A new implementation of sqlite3VdbeMakeLabel() is faster and makes fewer memory allocations by deferring memory allocation until sqlite3VdbeResolveLabel() is called, at which point the code generator has a better idea of how big the relocation table needs to be. The sqlite3VdbeMakeLabel() routine now takes a Parse* parameter instead of Vdbe*. check-in: 4a0929ac user: drh tags: trunk
2018-12-28
21:40
Merge performance enhancements and other patches. Leaf check-in: 44e1b55a user: drh tags: factor-out-scalar-subselect
21:32
Merge performance enhancements from trunk. check-in: 0f1b9ff9 user: drh tags: reuse-subqueries
20:48
Faster allocation of new sqlite3_stmt objects. check-in: 891f1f72 user: drh tags: trunk
20:14
Move the nOpAlloc field from Parse into Vdbe to avoid an extra pointer deference on the fast path in sqlite3VdbeAddOp3(). check-in: 8f10efc2 user: drh tags: trunk
19:23
Merge patches and enhancements from trunk. check-in: da53f3d3 user: drh tags: reuse-subqueries
18:09
Fix another problem with loading the structure record from a corrupt fts5 database. check-in: c4d44542 user: dan tags: trunk
17:45
Fix a problem causing the sqlite_master entry corresponding to a virtual table to be removed by a DROP TABLE even if the call to the vtabs xDestroy() method failed. check-in: 0140f6db user: dan tags: trunk
16:20
Add new test file wal2rollback.test to this branch. check-in: 85a376fc user: dan tags: wal2
14:33
Avoid an undefined left-shift operation in fts5 caused by malformed utf-8 text. check-in: c3a3a111 user: dan tags: trunk
13:57
Fix a buffer overwrite in fts5 triggered by a corrupt database. check-in: a385298d user: dan tags: trunk
07:37
Fix problems in fts5 found by ASAN. check-in: c564bf87 user: dan tags: trunk
2018-12-27
20:12
Fix another problem with corrupt database handling in fts5. check-in: fb0d7fba user: dan tags: trunk
17:11
Merge latest wal2 changes with this branch. check-in: ea96001e user: dan tags: begin-concurrent-wal2
16:55
Modify the btree02.test module so that it does not depend on whether TCL interprets a value as a string or as an integer. check-in: d9e4f957 user: drh tags: trunk
16:49
Increase test coverage of wal.c provided by permutation "coverage-wal" on this branch. check-in: 2f7f893a user: dan tags: wal2
15:36
Fix another problem in fts5 caused by a corrupt schema record. check-in: ff45f9dd user: dan tags: trunk
13:52
Fix the filename normalization in the dbtotxt utility program. check-in: 29a00a05 user: drh tags: trunk
07:46
Fix a null-pointer dereference that could occur in fts5 with a corrupt database. check-in: b0a49d5e user: dan tags: trunk
02:16
Fix a problem in which nested CTEs with the same table name trick the code generator into thinking they are the same CTE, which then tries to use the manifest them both into the same transient table. check-in: 202dd033 user: drh tags: trunk
00:30
In the treeview debugging output, provide additional details for the Table object associated with each FROM clause term. check-in: 11d4682d user: drh tags: trunk
2018-12-26
20:42
Improve testing of the wal.c changes on this branch. check-in: 63483e22 user: dan tags: wal2
19:10
Merge latest trunk changes with this branch. check-in: 404f9d99 user: dan tags: wal2
18:34
Update the coverage-wal permutation to cover branches enabled by SQLITE_ENABLE_SNAPSHOT. check-in: 6821c61f user: dan tags: trunk
17:49
Add a few more test cases to walvfs.test. check-in: 14a64df3 user: dan tags: trunk
16:57
Avoid an "uninitialized value read" problem in fts5 that can occur with a corrupt database. check-in: 6cae81cd user: dan tags: trunk
16:04
Fix a problem with handling corrupt databases in the fts5 integrity-check function. check-in: 9bad745d user: dan tags: trunk
15:04
Here is the beginnings of an effort to factor out the implementation of scalar subqueries to be implemented as subroutines at the end of the main body of bytecode, after the jump back to the OP_Init opcode. This is an incremental check-in that contains only preliminary changes. check-in: 50e5f390 user: drh tags: factor-out-scalar-subselect
14:23
Fix a problem with corrupt fts3 database detection introduced by [27199380]. check-in: ceeb4fba user: dan tags: branch-3.22
14:15
Fix a problem with corrupt fts3 database detection introduced by [95a9a39f]. check-in: c80bb15b user: dan tags: trunk
12:50
Fix a problem with the CSV extension when it uses the "header" option on a real file. check-in: 7acaed08 user: drh tags: trunk
11:39
Avoid a left-shift of a negative value (undefined behaviour) when dealing with a corrupt database in fts3. Cherrypick of [b851d12474]. check-in: 2fa63a8b user: dan tags: branch-3.22
2018-12-25
11:17
Fix a typo in a comment that is used to generate session documentation. check-in: a1f50d57 user: drh tags: trunk
00:15
Increase the number of parameters to sqlite3WhereCodeOneLoopStart() to encourage the compiler to inline that routine within sqlite3WhereBegin(). This gives a performance improvement. check-in: 3c2ad0e9 user: drh tags: reuse-subqueries
2018-12-24
20:21
Improvements to EXPLAIN QUERY PLAN formatting. The MULTI-INDEX OR now shows a separate "INDEX" subtree for each index. SCALAR SUBQUERY entries provide a subquery number that is related back to the .selecttrace output. check-in: 7153552b user: drh tags: reuse-subqueries
20:00
Add a few more test cases to walfault2.test and walvfs.test. check-in: 3873941c user: dan tags: trunk
19:59
Change another fts5 assert() that may fail with a corrupt database to an assert_nc(). check-in: d9653380 user: dan tags: trunk
18:51
Add test cases to test file walvfs.test. check-in: d697f6f3 user: dan tags: trunk
18:10
Always include OP_Explain opcodes in the bytecode when SQLITE_DEBUG is enabled. check-in: d8c1235c user: drh tags: trunk
15:22
Copy some extra test infrastructure from the mutexfree-shmlock branch to trunk. check-in: 883337ff user: dan tags: trunk
15:15
Merge latest trunk with this branch. Leaf check-in: 606b1ead user: dan tags: mutexfree-shmlock
14:30
Restore a line of code that was previously commented out for debugging. check-in: e53781f5 user: drh tags: reuse-subqueries
13:39
Change the way a comparison used to detect corrupt databases in fts3 is done to avoid potential pointer overflow in 32-bit builds. Cherrypick of [95a9a39ff7]. check-in: 27199380 user: dan tags: branch-3.22
13:34
Change the way a comparison used to detect corrupt databases in fts3 is done to avoid potential pointer overflow in 32-bit builds. check-in: 95a9a39f user: dan tags: trunk
12:09
Do not generate subroutines for non-static SELECT and EXISTS expressions. Fix up some test cases to account for the minor changes in EXPLAIN QUERY PLAN output. check-in: 06de44ec user: drh tags: reuse-subqueries
11:55
Prevent the use of subroutines to implement the RHS of IN operators within CHECK constraints. check-in: 6b24d3fb user: drh tags: reuse-subqueries
02:34
Experimental code that tries to put the computation of subqueries inside a subroutine, and reuse that subroutine if the same subquery is evaluated more than once. Current code does not work for CHECK constraints. check-in: 6c44838a user: drh tags: reuse-subqueries
2018-12-23
21:27
Split the code generation for the RHS of IN operators and for SELECT and EXISTS expressions into two separate subroutines, because there is now little commonality between those to functions. This is intended to help make the code easier to read and maintain. check-in: 2b6494b1 user: drh tags: trunk
2018-12-22
20:32
Improve the coverage of wal.c provided by the "coverage-wal" test permutation. check-in: 62314851 user: dan tags: trunk
19:54
Catch another case of a corrupted structure record in fts5. check-in: fb17fea4 user: dan tags: trunk
19:09
Change a faulty assert() in fts5 that could fail on a corrupt db to an if() statement. check-in: 1daaba9f user: dan tags: trunk
16:14
Fix one more instance of excess whitespace in test result strings. check-in: c064964d user: drh tags: trunk
15:50
Enhance the wal2 header comment in wal.c to explain how the wal-hook is invoked in wal2 mode. check-in: 118aa7e3 user: dan tags: wal2