LEFT JOIN malfunctions with partial ISNULL index
|User & Date:||mrigger 2019-11-30 17:51:24|
- Change foundin to "3.30.0"
- Change icomment to:
Consider the following test case:
CREATE TABLE t0(c0); CREATE TABLE t1(c0); CREATE INDEX i0 ON t0(1) WHERE c0 ISNULL; INSERT INTO t0(c0) VALUES (1); INSERT INTO t1(c0) VALUES (1); SELECT * FROM t1 LEFT JOIN t0 WHERE t0.c0 ISNULL; -- unexpected: row is fetched
Unexpectedly, a row is fetched. It is not fetched when the index is omitted and the following statement indicates that t0.c0 ISNULL should evaluate to false:
SELECT t0.c0 ISNULL FROM t1 LEFT JOIN t0; -- 0
- Change login to "mrigger"
- Change mimetype to "text/x-fossil-wiki"
- Change severity to "Critical"
- Change status to "Open"
- Change title to "LEFT JOIN malfunctions with partial ISNULL index"
- Change type to "Code_Defect"