SQLite
Timeline
Not logged in

50 most recent check-ins

2018-04-24
19:22
Update this branch with latest changes from trunk. Leaf check-in: 2d8d13e4a1 user: dan tags: begin-concurrent-pnu
19:21
Merge latest trunk changes into this branch. Leaf check-in: b27bd799ea user: dan tags: begin-concurrent
18:59
Remove a recently added NEVER() macro from a branch that can be taken in obscure circumstances. Leaf check-in: 2aa210030a user: dan tags: trunk
18:53
Fix a problem with processing "LEFT JOIN tbl ON tbl.a = ? AND (tbl.b=? OR tbl.c=?)" in cases where there are indexes on both tbl(a, b) and tbl(a, c). check-in: ce35e39c5c user: dan tags: trunk
17:34
Do not attempt to use terms from the WHERE clause to drive indexes on the right table of a LEFT JOIN. Fix for ticket [4ba5abf65c5b0f9a96a7a40cd18b] check-in: aeb694e3f7 user: drh tags: trunk
16:51
Update the expert extension test cases to account for the fact that EXPLAIN QUERY PLAN now shows the start of each trigger in its output. check-in: 8acb42f489 user: drh tags: trunk
16:41
All the OR optimization to proceed even if the OR is also converted into an IN operator. check-in: e252c6540d user: drh tags: trunk
14:18
Add a hyperlink to the ticket on the code comment for the fix to ticket [7fa8049685b50b5aeb0c2]. check-in: 45247c7f29 user: drh tags: trunk
14:05
Do not attempt to read values from indexes-on-expressions if the index is on the RHS of a LEFT JOIN. This won't work if the index cursor points at a null-row. Fix for [7fa80496]. check-in: b8ef967ab1 user: dan tags: trunk
13:07
Enhance the CLI to render EXPLAIN QUERY PLAN using an ASCII-art graph. This works with ".eqp" modes and when the query begins with exactly "EXPLAIN QUERY PLAN". To see the original output format, add extra space characters in between words of the initial "EXPLAIN QUERY PLAN". check-in: f53716ee2a user: drh tags: trunk
10:57
Fix a memory leak following failure to open an external CSV file in the csv.c extension. check-in: 526ee07d19 user: drh tags: trunk
01:10
In EXPLAIN QUERY PLAN output, do not show an EXECUTE LIST SUBQUERY line for IN operators where the RHS is a list and not a subquery, since in that case there is no SUBQUERY to execute. check-in: 8bc0207abd user: drh tags: trunk
00:08
Fix to check-in [ca34c2dd20ee071e] - avoid a NULL pointer dereference following an OOM. check-in: c7e6e848fa user: drh tags: trunk
2018-04-23
20:38
Fix a problem in sqlite3ExprCompare() associated with UPSERT. check-in: 67d0b2c152 user: drh tags: trunk
20:04
Fix a formatting issue in the TreeView output for bare expression lists. check-in: a635681781 user: drh tags: trunk
19:30
Disable the OR optimization based on expressions in the ON clause of a LEFT JOIN. This is a temporary measure until we can devise a better fix. Closed-Leaf check-in: 4df5ea935e user: drh tags: begin-concurrent-pnu-tempfix
18:38
Add the ".imposter off" variant of the ".imposter" dot-command in the CLI. check-in: d3dad06ff1 user: drh tags: trunk
17:43
The ".selecttrace 0x2000" command causes just the top-level parse tree to be displayed, after all transformations, and showing the EQP iSelectId at each level. check-in: ca34c2dd20 user: drh tags: trunk
17:18
The ".selecttrace 4" command now shows only a single parse tree after name resolution. check-in: 5682146e8a user: drh tags: trunk
17:09
Do not restore the iSelectId value until after the last SELECTTRACE when debugging Select processing. check-in: 8088d8cac3 user: drh tags: trunk
17:02
In the ".selecttrace" output, include the EXPLAIN QUERY PLAN iSelectId as part of each Select identifier. check-in: 5c6339f955 user: drh tags: trunk
13:28
Ensure that there are no bind-parameters or incorrect schema references in the UPSERT portions of an INSERT within a TRIGGER. check-in: d47a6bdda0 user: drh tags: trunk
00:25
Fix an unreachable branch associated with stack overflow in the LEMON-generated parser. check-in: e3064ba3b6 user: drh tags: trunk
2018-04-21
22:40
Performance improvements on the main loop of the LEMON-generated parser. check-in: fec1ebadeb user: drh tags: trunk
20:24
Enhance LEMON to track which symbols actually carry semantic content. Output the list of symbols that do not carry content at the end of the report, but do not (yet) do anything else with the information. check-in: dcf2bafc15 user: drh tags: trunk
14:11
A few more tests for upsert. check-in: b78005b6d4 user: dan tags: trunk
13:51
Add the %extra_context directive to lemon, as an alternative to %extra_argument. Use this to improve the performance of the parser. check-in: be47a6f526 user: drh tags: trunk
03:06
Fix UPSERT so that it plays nicely with AUTOINCREMENT. check-in: 359725ab36 user: drh tags: trunk
2018-04-20
20:47
Add the -dDIRECTORY command-line option to LEMON. check-in: 9cd20475ff user: drh tags: trunk
20:37
Enhance the "rbu" command line utility a bit. check-in: 61eb516f83 user: dan tags: trunk
20:09
Fix a harmless compiler warning. check-in: d2ab24f59d user: drh tags: trunk
19:46
Avoid the use of statement journals on DELETEs of a single row without triggers or foreign keys. check-in: 20bf580080 user: drh tags: trunk
19:32
Avoid opening a statement journal on single-row UPDATEs without triggers or FK constraints. check-in: 2772404b8c user: drh tags: trunk
18:01
Fix a VDBE comment on upsert. Provide an error message when upsert detects index corruption. check-in: 279c48f606 user: drh tags: trunk
17:50
Add tests for name resolution in ON CONFLICT clauses. check-in: cf253584ec user: dan tags: trunk
17:02
Avoid unnecessary cursor seeking when performing an UPSERT. check-in: 693a3dcbdd user: drh tags: trunk
16:49
Improved VDBE comment on UPSERT code. Closed-Leaf check-in: 131ed95e14 user: drh tags: upsert-opt2
16:27
Minor simplification of the previous checkin. check-in: d1906689ab user: drh tags: upsert-opt2
15:56
Avoid unnecessary cursor seeks during upsert processing. check-in: 7c4b6d5475 user: drh tags: upsert-opt2
15:34
Add test cases for UPSERT. And a fix for a "REPLACE INTO ... ON CONFLICT" statement where the new row conflicts with both the IPK and the ON CONFLICT indexes. check-in: d8eb9f8d9b user: dan tags: trunk
13:18
Enhance UPSERT so that the UPDATE uses the same set of cursors as the INSERT. check-in: c37f39d18d user: drh tags: trunk
00:40
Minor simplification of the cursor allocation logic for update. check-in: fdf71be658 user: drh tags: trunk
2018-04-19
23:52
Fix the handling of "PRAGMA count_changes=ON" with UPSERT. Also improved the implementation of count_changes in other places, without changing the behavior. check-in: c6f71115eb user: drh tags: trunk
21:29
Minor simplification to the upsert logic. check-in: e657c1d60f user: drh tags: trunk
20:18
Avoid unnecessary OP_Goto instructions on an upsert of a table that only has a single secondary index. Leaf check-in: 97dd21ab90 user: drh tags: upsert-opt
20:06
Modify a test case in zipfile2.test to take into account that with some platform/file-system combinations it is possible to fopen() and fread() (but not fwrite()) a directory. check-in: 893e6089c8 user: dan tags: trunk
16:52
Add the --upsert option to the wordcount test program. check-in: ee1e750baa user: drh tags: trunk
16:14
Add the ext/misc/templatevtab.c template for virtual tables. This is a work-in-progress as it still needs improvements to the comments in order to be useful as a template. check-in: 22358fb549 user: drh tags: trunk
13:52
Fix a problem in the new upsert implemention, discovered by OSSFuzz. check-in: b6d5ea59fe user: drh tags: trunk
11:45
Fix the table name aliasing on INSERT so that it occurs before the column list rather than afterwards, just as it does for PostgreSQL. Add table name aliasing to UPDATE and DELETE. check-in: 861a2e2a48 user: drh tags: trunk