|Title:||IS NULL unexpectedly evaluates to TRUE|
|Last Modified:||2019-09-03 13:35:00|
|Version Found In:||3.29.0|
mrigger added on 2019-09-02 19:22:41:
Consider the test case below: <pre> CREATE TABLE t0(c0 TEXT, c1 REAL, c2, PRIMARY KEY(c2, c0, c1)); CREATE INDEX i0 ON t0(c1 IN (c0)); INSERT INTO t0(c0, c2) VALUES (0, NULL) ON CONFLICT(c2, c1, c0) DO NOTHING; UPDATE t0 SET c2 = x''; SELECT * FROM t0 WHERE t0.c2 IS NULL; -- unexpected: row is fetched </pre> The row is fetched, even though the WHERE condition should evaluate to FALSE: <pre> SELECT t0.c2 IS NULL FROM t0; -- expected: FALSE </pre>
drh added on 2019-09-02 22:14:19: (text/x-fossil-wiki)
The problem was introduced by a check-in earlier today that was itself a fix for ticket [2841e99d104c6436].