/ 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 5159cb8f2bcfb1f7.

2017-04-27
13:05
If possible, delete the journal file when a database connection is closed. check-in: d5b5326d user: dan tags: server-edition
2017-04-26
20:45
Experimental implementation of pessimistic page-level locking based on rollback mode. check-in: 64ecf7c7 user: dan tags: server-edition
17:21
Add new test file cachespill.test. check-in: 2d0b6431 user: dan tags: trunk
14:34
Replace <fts5.h> with "fts5.h" in test file fts5_test_tok.c. check-in: 63d9ca5c user: dan tags: trunk
04:32
Fix a subtle bug in Lemon discovered and reported on the mailing list by Kelvin Sherlock, who also suggested the correct fix. check-in: 304689f8 user: drh tags: trunk
2017-04-24
16:14
Bring in all the latest enhancements from trunk. check-in: 031feebc user: drh tags: apple-osx
14:16
When building an ephemeral table of integers, do not assume that the table does not already contain N if the insert cursor points to N-1. Fix for ticket [61fe9745]. check-in: 1c1b0862 user: dan tags: trunk
2017-04-22
00:20
Fix an assertion fault found by OSSFuzz. check-in: e39769f4 user: drh tags: trunk
2017-04-21
19:58
Another minor formatting fix. check-in: 9fa2ce3c user: dan tags: schemalint
19:56
Fix formatting errors in the previous commit. check-in: da9a2e5a user: dan tags: schemalint
19:53
Update the README.md file in the ext/expert/ directory. check-in: 3b2ff4e0 user: dan tags: schemalint
17:03
Remove a NEVER macro for a condition that may be true as of [a47efb7c]. Problem reported by OSSFuzz. check-in: bdc50d8d user: dan tags: trunk
16:04
Fix an FTS5 bug that could cause a prefix-query without a prefix-index on a database that contains delete-markers to return extra, non-matching, rows. check-in: 840042cb user: dan tags: trunk
2017-04-20
17:35
Merge latest trunk changes into this branch. check-in: b1533bc4 user: dan tags: schemalint
17:03
Avoid creating a temp table in the user database in the sqlite3_expert code. check-in: 4e366996 user: dan tags: schemalint
16:43
Speed this branch up a bit by filtering before the virtual table layer when sampling user data. Closed-Leaf check-in: 8e57c313 user: dan tags: schemalint-failure
16:18
Avoid adding INTEGER PRIMARY KEY columns to candidate indexes. check-in: 4577fea5 user: dan tags: schemalint
16:08
Avoid creating a temp table in the user database in the sqlite3_expert code. Trouble is, this makes sampling for stat1 data much slower. check-in: c62e3582 user: dan tags: schemalint-failure
09:54
Add an option to generate stat1 data based on a subset of the user database table contents to sqlite3_expert. check-in: c69c3e21 user: dan tags: schemalint
2017-04-19
13:25
Further improvements to coverage of fts3 module. check-in: 6b21d0fd user: dan tags: trunk
07:33
Further modifications and test cases to improve test coverage of fts3. check-in: ea8a0d2c user: dan tags: trunk
2017-04-18
20:10
Have sqlite3_expert_analyze() populate the sqlite_stat1 table before running queries through the planner for the second time. check-in: a157fcfd user: dan tags: schemalint
13:50
Use sqlite3_table_column_metadata() instead of a SELECT statement to check for the existence of a %_stat table in fts3. This leads to smaller and easier to test code. check-in: dc2a4802 user: dan tags: trunk
11:20
Improved optimizations of views as the right operand of a LEFT JOIN. check-in: 41c27bc0 user: drh tags: trunk
09:04
Fix sqlite3_expert handling of triggers on views. check-in: ff4976da user: dan tags: schemalint
05:49
Refactor the fts3ColumnMethod() function so that all branches can be covered. check-in: e47fdb49 user: dan tags: trunk
2017-04-17
23:23
Defer checking for null in the comparison operators, since that is an uncommon case. check-in: 56845256 user: drh tags: trunk
20:50
Do not allow a Mem object to be both NULL and some other type at the same time. check-in: e698db19 user: drh tags: trunk
18:42
Consolidate two branches of code in the "PRAGMA foreign_key_check" implementation. check-in: 69f51f83 user: dan tags: trunk
18:02
Fix a problem in "PRAGMA foreign_key_check" in handling a WITHOUT ROWID child table with an INTEGER PRIMARY KEY parent key. Also, if an FK violation is detected in a WITHOUT ROWID child table, do not try to read and return the rowid. The second column returned by "PRAGMA foreign_key_check" in this case (WITHOUT ROWID child table) is now always set to NULL. check-in: 690870bd user: dan tags: trunk
17:03
Add support for analyzing trigger programs to the sqlite3_expert code. check-in: 159e8022 user: dan tags: schemalint
16:07
Further improvements to test coverage in fts3. check-in: 352413ee user: dan tags: trunk
13:38
Improve coverage of code in fts3. check-in: 1a08a836 user: dan tags: trunk
13:18
Fix the ".column" output mode in the command-line shell so that it correctly counts and formats multi-byte UTF characters. check-in: f508aff8 user: drh tags: trunk
2017-04-16
22:41
In the showwal command-line tool, for unix builds, if the auxiliary argument is of the form "Ntruncate" where "N" is a frame number, then truncate the WAL file after the N-th frame. check-in: 90015df3 user: drh tags: trunk
22:08
Add the anycollseq.c loadable extension in etc/misc check-in: d7b9813c user: drh tags: trunk
2017-04-15
16:52
Fix problems with handling constraints on the rowid column in sqlite3expert.c. check-in: 2e630879 user: dan tags: schemalint
15:47
Merge latest trunk changes into this branch. check-in: 2d0c458e user: dan tags: schemalint
14:30
Add header comment for sqlite3_vtab_collation(). check-in: d238694c user: dan tags: schemalint
14:16
Fix memory leaks in the code on this branch. Make use of the sqlite3_index_constraint.usage field. Do not try to handle ORDER BY terms with explicit COLLATE clauses - they don't get passed to the vtab layer anyway. check-in: 0cd75a87 user: dan tags: schemalint
11:53
In the skip-ahead-distinct optimization, fix a bug in the logic that determines when to invoke the optimization based on sqlite_stat1 statistics. check-in: 89f9e436 user: drh tags: trunk
2017-04-14
22:41
Fix to the decision logic for when to use the skip-ahead-distinct optimization. Closed-Leaf check-in: e50fd489 user: drh tags: skip-ahead-distinct
19:46
Remove end-of-line whitespace from lemon.c. check-in: d78355c8 user: drh tags: trunk
19:44
Fix some left-over K&R-C constructs in lemon.c. No changes to the core. check-in: a5379905 user: drh tags: trunk
19:41
Modify the code in ext/expert/ to use the vtab interface instead of sqlite3_whereinfo_hook(). Remove sqlite3_whereinfo_hook(). check-in: 3bb65850 user: dan tags: schemalint
19:03
Add the TK_IF_NULL_ROW opcode to deal with non-NULL result columns in the result set of a view or subquery on the RHS of a LEFT JOIN that gets flattened. Closed-Leaf check-in: 3a5860d8 user: drh tags: left-join-view
17:30
When doing a DISTINCT query using an index, try to use the index to skip ahead to the next distinct element, rather than doing a full scan of the index. (This is the "skip-ahead-distinct" optimization.) check-in: f489b5bb user: drh tags: trunk
17:18
An initial attempt to optimize VIEWs that occur as the right operand of a LEFT JOIN. This particular check-in does not work correctly because it does not deal with the case of columns in the VIEW that return non-NULL even when all columns in the table of the VIEW are NULL because of the LEFT JOIN. check-in: 1838a59c user: drh tags: left-join-view
14:50
Make USE_FULLWARN=1 the default for MSVC and fix harmless compiler warnings. check-in: 6bf67376 user: mistachkin tags: trunk
14:02
Enhance the sqlite3TreeView() display for Expr objects so that it shows the iRightJoinTable value for Expr nodes that have the EP_FromJoin property. check-in: 5159cb8f user: drh tags: trunk
12:39
Simplify the interface to the subst() routines that are part of the query flattener by collecting common parameters into the SubstContext object and passing around a pointer to that object. check-in: e651074b user: drh tags: trunk
12:27
Remove an incorrect ALWAYS(). check-in: f956f6ae user: drh tags: trunk
00:45
Fix a couple of unreachable branches. check-in: 1aa0ea8d user: drh tags: skip-ahead-distinct
2017-04-13
21:29
Fix the skip-ahead-distinct optimization so that it works with indexes that have repeated columns with different collating sequences. check-in: ce1e2b88 user: drh tags: skip-ahead-distinct
19:48
Simplification of the skip-ahead-distinct logic. There is still an issue with handling COLLATE. check-in: 57c5173b user: drh tags: skip-ahead-distinct
18:33
New test cases and minor fixes for the optimization on this branch. check-in: 70ac9ea1 user: dan tags: skip-ahead-distinct
16:19
Update this branch with latest changes from trunk. check-in: 5fcd840c user: dan tags: schemalint
15:51
Reinstate the SQLITE_API qualifier on the sqlite3_delete_database() method in test_delete.c. Accidentally removed by the previous commit. check-in: 59c70108 user: dan tags: trunk
15:36
Update the code in test_delete.c to use the "win32" VFS if SQLITE_OS_WIN is defined. check-in: fa9bb7b7 user: dan tags: trunk
13:01
Only use the skip-ahead-distinct optimization if the index has been analyzed and we know that a skip-head is likely to skip over at least 11 rows. The magic number 11 was determined by experimentation. check-in: 0cf16dec user: drh tags: skip-ahead-distinct
09:45
Allow a user column name to be used on the LHS of a MATCH operator in FTS5. check-in: 6f54ffd1 user: dan tags: trunk
01:19
Forward port the skip-ahead-distinct branch which was abandoned for some reason that I do not recall. This port should have been achived by a merge of trunk into the previous head of skip-ahead-distinct, but that did not work. So I had to manually "rebase" the changes. check-in: 132339a1 user: drh tags: skip-ahead-distinct
00:12
Fix a regression caused by the fix for ticket [6c9b5514077fed34551f98e64c09a1] - control characters allowed in JSON. check-in: 8e7b6118 user: drh tags: trunk
2017-04-12
17:50
Update fts5 to support "<colset> : ( <expr> )" for column filtering, as well as "<colset> : NEAR(...)" and "<colset> : <phrase>". check-in: c847543f user: dan tags: trunk
17:38
Improved \n and \r escapes in the ext/misc/dbdump.c utility function. The implementation of dbdump.c now matches the implementation in the CLI. check-in: f2643315 user: drh tags: trunk
2017-04-11
20:48
Avoid updating unaffected indexes on a table as part of an UPDATE that requires foreign key processing in some cases. check-in: 7aae5c0f user: dan tags: trunk
19:58
Avoid updating unaffected indexes on a table as part of an UPDATE that requires foreign key processing in some cases. Closed-Leaf check-in: 477bea9e user: dan tags: fkey-optimization
19:00
Update this branch with latest trunk changes. check-in: 0f66a093 user: dan tags: schemalint
18:55
Limit the depth of recursion for valid JSON in the JSON1 extension in order to avoid using excess stack space in the recursive descent parser. Fix for ticket [981329adeef51011052667a9]. check-in: 1f68c184 user: drh tags: trunk
18:29
Fix a formatting issue in the output of the sqlite3_expert program. check-in: cc8c3581 user: dan tags: schemalint
18:06
Smaller and faster implementation of exprMightBeIndexed(). check-in: 76cd611d user: drh tags: trunk
17:43
Add header comments to the API functions in sqlite3expert.h. Include a list of all candidate indexes in the report output by the sqlite3_expert program. check-in: 0c45c5eb user: dan tags: schemalint
16:44
Very slight smaller and faster sqlite3SelectNew() check-in: 4143650c user: drh tags: trunk
12:20
Add an ALWAYS() around an unreachable condition in sqlite3VdbeMemGrow(). check-in: 0f3eb61f user: drh tags: trunk
11:52
Fix a segfault that could occur if an indexed expression was used in a comparison operation within the result-set of a SELECT statement. check-in: d6bb7c42 user: dan tags: trunk
01:30
When evaluating a query that uses an index on an expression, try to use the expression values read directly from the index rather than reevaluating the expression. check-in: a47efb7c user: drh tags: trunk
01:01
Improved comments. Fix a problem when an indexed expression is used in an ORDER BY clause. Closed-Leaf check-in: c59eaf2b user: drh tags: covering-index-on-expr
2017-04-10
23:42
Merge changes from trunk. check-in: 8978465f user: drh tags: covering-index-on-expr
20:51
Smaller and faster vdbeFreeOpArray() check-in: e052436d user: drh tags: trunk
20:27
Slightly smaller and faster sqlite3VdbeMemGrow(). check-in: efd1702a user: drh tags: trunk
20:00
Add ext/expert/README.md. check-in: 9318f1b9 user: dan tags: schemalint
16:13
Changes to allow the code in sqlite3expert.c to be tested directly (via the API in sqlite3expert.h) instead of by invoking the sqlite3_expert application. Fix memory leaks and other problems. check-in: 5dd98317 user: dan tags: schemalint
12:31
Add a new JSON test case to verify that all control characters are escaped in the json_quote() function. check-in: 6ee12221 user: drh tags: trunk
12:25
Change the JSON extension so that it disallows control characters inside of strings. Fix for ticket [6c9b5514077fed34551f98e64c09a10dc2fc8e16]. check-in: 475d8f82 user: drh tags: trunk
2017-04-09
19:23
Do not expose the name of the internal Mem object in the public interface defined by sqlite3.h. check-in: 19dd753f user: drh tags: trunk
08:38
Fix the -file option on the sqlite3_expert program. check-in: 0857c48e user: dan tags: schemalint
2017-04-08
19:00
Merge latest trunk with this branch. check-in: e051e8f2 user: dan tags: schemalint
18:56
Rename shell6.test to expert1.test. Have it invoke the sqlite3_expert binary if it is present. check-in: be0deff9 user: dan tags: schemalint
18:24
Merge all recent changes from trunk. check-in: c23ef5e2 user: drh tags: apple-osx
18:18
Disallow leading zeros on numeric constants in JSON. Fix for ticket [b93be8729a895a528e2] check-in: 204e72f0 user: drh tags: trunk
17:41
Use hash tables instead of in-memory database tables for a few purposes in sqlite3expert.c. check-in: bf10e68d user: dan tags: schemalint
14:11
Expand on the comment above OP_Destroy to explain why it throws an error if there are any active reader VMs. check-in: b9a8c2b9 user: dan tags: trunk
13:52
Have the rtree module close any open blob-handle within the xSavepoint method. This prevents such an open blob handle from interfering with DROP TABLE operations. check-in: fa4416ad user: dan tags: trunk
13:42
Fix the quoting mechanism for ".dump" so that it is not applied for the ".mode quote" output. check-in: 78c1e903 user: drh tags: trunk
09:12
Have fts5 close any open blob-handle when a new savepoint is opened. This ensures that fts5 does not prevent DROP TABLE statements (which always open a savepoint) from succeeding. check-in: a921ada8 user: dan tags: trunk
01:09
Make sure the RTree sqlite3_blob handle is reset prior to renaming the table. check-in: 1cdae2db user: drh tags: trunk
00:55
Fix the ".dump" command so that it works with ".headers on". Also fix the display of ".mode insert" with ".headers on". check-in: a6ce57ee user: drh tags: trunk
00:25
Merge the latest trunk changes. check-in: dd16439e user: drh tags: apple-osx
2017-04-07
20:20
Use replace() instead of char() to quote newline and return characters in strings in the output of .dump, to avoid excess expression complexity. check-in: 73073529 user: drh tags: trunk
20:14
Refactor code to suggest indexes from the shell tool into an extension in ext/expert. Unfinished. check-in: 305e19f9 user: dan tags: schemalint