/ Changes On Branch join-strength-reduction
Login

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

Changes In Branch join-strength-reduction Excluding Merge-Ins

This is equivalent to a diff from 4661ac81c9 to b5d3dd8cb0

2018-03-22
12:00
Add the left join strength reduction optimization. Enhance the push-down optimization so that it works with many LEFT JOINs. (check-in: dd568c27b1 user: drh tags: trunk)
2018-03-21
19:25
Add the optfuzz.c program for verifying the query planner using a fuzzer. This is an initial code check-in. (check-in: 3fb21251b0 user: drh tags: trunk)
01:59
Relax LEFT-JOIN restrictions on the push-down optimization. (Closed-Leaf check-in: b5d3dd8cb0 user: drh tags: join-strength-reduction)
2018-03-20
22:52
Do a more thorough job of cleaning traces of the strength-reduced LEFT JOIN. (check-in: 08833dda3a user: drh tags: join-strength-reduction)
21:16
If terms of the WHERE clause require that the right table in a LEFT JOIN not be a null row, then simplify the LEFT JOIN into an ordinary JOIN. (check-in: 5b7abecc7a user: drh tags: join-strength-reduction)
19:02
Fix incorrect testcase labels on two cases in join5.test. No changes to code. (check-in: 4661ac81c9 user: drh tags: trunk)
18:08
Improvements to the HAVING-to-WHERE optimization. The code uses less space and less CPU, and there is now ".selecttrace" output. (check-in: 5ad668d433 user: drh tags: trunk)

Changes to src/expr.c.

Changes to src/select.c.

Changes to src/sqliteInt.h.

Changes to test/cursorhint2.test.

Changes to test/e_select.test.

Changes to test/join2.test.