Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 check-ins occurring around fa9d206f904280e3.
2022-04-16
| ||
13:55 | New test cases. One of the new test cases shows a flaw in the base design of RIGHT JOIN. (check-in: 4c3ce6475a user: drh tags: right-join) | |
12:40 | RIGHT JOIN USING now appears to work the same as PG-14. Legacy tests pass. (check-in: 5bfb862419 user: drh tags: right-join) | |
2022-04-15
| ||
21:21 | Get sqlite3x and extensions testing from Makefile setup, and some of wapptest changes done to run same. (a WIP) (check-in: d238fcf4be user: larrybr tags: cli_extension) | |
19:53 | Revamp the USING clause processing so that it works (mostly) with RIGHT and FULL JOIN. (check-in: 719c8d920b user: drh tags: right-join) | |
19:49 | Avoid deleting substructure of the Expr node in lookupName() until after the error message is generated. (Closed-Leaf check-in: b8e7176639 user: drh tags: right-join-using) | |
19:27 | Progress toward a working USING for FULL JOIN. (check-in: fed2646ade user: drh tags: right-join-using) | |
18:30 | When expanding "*" in the result set of a SELECT, do not attach a table name to columns that are in subsequent USING clauses. (check-in: 91530990e0 user: drh tags: right-join-using) | |
17:08 | The sqlite3ProcessJoin() routine converts a NATURAL JOIN into a JOIN USING so that henceforth the NATURAL keyword can be ignored. (check-in: 8378e1e0d2 user: drh tags: right-join) | |
15:47 | Enhance the IdList object to exist in a single memory allocation (rather than a separate allocate for the base object and the array of IDs). Also permit an IdList object to store an Expr pointer together with each name. (check-in: 40f3c95871 user: drh tags: right-join) | |
15:15 | Add the "3" in the name of the sqlite3ProcessJoin() function. (check-in: b925f72b6f user: drh tags: right-join) | |
2022-04-14
| ||
20:43 | Record the three known big issues with the current RIGHT JOIN design in the join8 test module, with tests that deliberately fail in order to remind us to fix the issues. (check-in: 2c4ee723f4 user: drh tags: right-join) | |
19:48 | Cherry pick subroutine indentation improvements and the hardening of OP_Gosub from the right-join branch back into trunk. (check-in: 12645f100d user: drh tags: trunk) | |
19:05 | Another instance of indenting a subroutine. (check-in: 73f4036b04 user: drh tags: right-join) | |
18:19 | Check for interrupts and invoke the progress handler following a Gosub opcode, to avoid and recover from infinite subroutine loops. (check-in: 647211e044 user: drh tags: right-join) | |
16:34 | Rerun the subroutines that compute row-values if necessary from within the RIGHT JOIN body subroutine. (check-in: 9b9038bcd0 user: drh tags: right-join) | |
15:55 | Adjust the output formatting of bytecode listings so that subroutines used to implement subqueries are indented one level. (check-in: 079b7b1252 user: drh tags: right-join) | |
14:58 | Disable autoindexing for the RIGHT JOIN loop. (check-in: 402a89e33e user: drh tags: right-join) | |
14:40 | Adjust assert() statements to account for the new always-NULL cursor type added by [4526c5d316508093]. (check-in: 7822faa48a user: drh tags: right-join) | |
14:19 | Previous check-in accidentally inverted a test on an assert(). Fix that. (Closed-Leaf check-in: 5ec4f806c5 user: drh tags: right-join-fix, right-join) | |
12:59 | Fix assert() statements associated with artifical null-value cursors created by RIGHT JOIN. (check-in: f5bce5f152 user: drh tags: right-join-fix, right-join) | |
2022-04-13
| ||
19:00 | Fix a harmless (false-positive) unused variable compiler warning on MSVC. (check-in: 63b04c63de user: drh tags: right-join) | |
18:32 | Make the sqlite3TreeViewSrcList() routine a no-op if called with a NULL SrcList object. (check-in: 185d2720e7 user: drh tags: right-join) | |
18:20 | Fix an assert() in OP_Column so that it accounts for the new type of pseudo-cursor that always returns NULL for any column. (check-in: 371ddc97be user: drh tags: right-join) | |
17:41 | If the OP_NullRow opcode is given a cursor that has not yet been opened, then go automatically open it to a special pseudo-cursor that allows returns NULL for every column. Used by the new RIGHT JOIN implementation. (check-in: 4526c5d316 user: drh tags: right-join) | |
16:46 | Move the explain comment for the RIGHT-JOIN post-processing loop to the verify beginning of the loop - to make the start of the loop clearer to human bytecode readers. (check-in: 7ed2a271e6 user: drh tags: right-join) | |
12:34 | This was the original landing of the RIGHT and FULL OUTER JOIN changes to trunk. It was moved back onto a branch due to problems discovered. (check-in: fa9d206f90 user: drh tags: right-join) | |
12:12 | The rows of a RIGHT JOIN might come out in any arbitrary order. So disable the ORDER-BY/GROUP-BY optimizations if a RIGHT JOIN is involved. (check-in: d168f245ec user: drh tags: right-join) | |
10:49 | Fix an assert() in btree.c that might not be true for a corrupt database file. (check-in: dbd8e2e46c user: drh tags: trunk) | |
03:48 | Extension interface cleanup, and rename MetaCommand to DotCommand (to better match docs) (check-in: f78d7b8b89 user: larrybr tags: cli_extension) | |
01:52 | Add missing VdbeCoverage() macros on new branch byte-code opcodes. (check-in: 218c7167e5 user: drh tags: right-join) | |
2022-04-12
| ||
20:20 | Ensure that the JT_LTORJ bit in the SrcItem.fg.jointype is preserved during query flattening. (check-in: 6125905015 user: drh tags: right-join) | |
18:40 | For the bad join type error message "unknown or unsupported join type" remove the "or unsupported" clause, because we now support all valid join types. (check-in: ab0a0562dd user: drh tags: right-join) | |
18:04 | Factor out the RIGHT JOIN non-matched row loop from sqlite3WhereEnd(). This reduces the register pressure on that routine and helps it to run faster in the common case where there is no RIGHT JOIN. (check-in: beeecf1604 user: drh tags: right-join) | |
17:43 | Merge the latest enhancements from trunk into the right-join branch. (check-in: b3e57ba120 user: drh tags: right-join) | |
17:02 | Earlier detection of corruption in balance_nonroot(). dbsqlfuzz 9191ade77ebd3b7a3356e074957aa85b0c669d14. (check-in: bff4f083eb user: dan tags: trunk) | |
14:23 | The multi-index OR optimization does not work for RIGHT join, so disallow it. (check-in: 34c2f7b237 user: drh tags: right-join) | |
13:46 | Always explicitly set each table cursor to NullRow before doing the RIGHT-JOIN unmatched row pass. This is a cheap opcode, and it adds an extra layer of defense against incorrect results. (check-in: a3d14e61ca user: drh tags: right-join) | |
11:02 | Modify utility function sqlite3SetString() so that it may be used safely on Parse.zErrMsg. Fuzzer test case "crash-1604e5d76c92574e21e437049dab9b672e06b767.txt". (check-in: 09c5a4ec13 user: dan tags: trunk) | |
10:06 | Further clarification of Tcl extension intro. (check-in: 29ab6e9037 user: larrybr tags: cli_extension) | |
2022-04-11
| ||
23:08 | Tcl extension doc, minor clarifications and spelling improvements (check-in: 6ccdd9b751 user: larrybr tags: cli_extension) | |
23:01 | Fix CLI mishandling of SQL "execute" tokens, go and / (check-in: 1a117b0388 user: larrybr tags: cli_extension) | |
21:00 | Fix RIGHT JOIN for virtual tables. (check-in: 75a9116e98 user: drh tags: right-join) | |
20:15 | The query flattener must add TK_IF_NULL_ROW opcodes on substituted values that land on the left operand of a RIGHT JOIN, just as it already does for the right operand of a LEFT JOIN. (check-in: 8e02cdf5b1 user: drh tags: right-join) | |
18:54 | New test cases added. (check-in: bdd1499c0f user: drh tags: right-join) | |
18:42 | Fix mis-renditions of help text. (check-in: 1a7a6b6f48 user: larrybr tags: cli_extension) | |
17:27 | Fix handling of "continue" and "break" from inside the loop for the right operand of a RIGHT JOIN. (check-in: b6e773a26c user: drh tags: right-join) | |
14:43 | Do not attempt the LEFT JOIN strength reduction optimization on a FULL JOIN. (check-in: 7ef3e99a73 user: drh tags: right-join) | |
14:26 | Show LEFT and RIGHT JOIN processing in the EXPLAIN QUERY PLAN output. (check-in: d91faeffea user: drh tags: right-join) | |
13:13 | New test cases. (check-in: d5f6791b86 user: drh tags: right-join) | |
12:38 | Make a distinction between (1) WHERE clause constraints, (2) ON/USING constraints on outer joins, and (3) ON/USING clause constraints on inner joins. Formerly, there was no distinctionb between 1 and 3, but RIGHT JOIN needs to know the difference. Make RIGHT JOIN aware of this difference and add test cases. (check-in: 0f6f61c366 user: drh tags: right-join) | |