Ticket Hash: | a9efb42811fa41ee286e84cabcef24f3abc84d9c | ||
Title: | Incorrect result for GLOB operator | ||
Status: | Fixed | Type: | Code_Defect |
Severity: | Severe | Priority: | Immediate |
Subsystem: | Unknown | Resolution: | Rejected |
Last Modified: | 2019-11-02 13:33:10 | ||
Version Found In: | 3.30.0 |
User Comments: | ||||
mrigger added on 2019-11-02 08:22:26:
Consider the following test case: CREATE TABLE t0(c0); CREATE INDEX i0 ON t0(0) WHERE c0 GLOB c0; INSERT INTO t0 VALUES (0); CREATE UNIQUE INDEX i1 ON t0(0); CREATE UNIQUE INDEX i2 ON t0(0); REPLACE INTO t0 VALUES(0); SELECT COUNT(*) FROM t0 WHERE t0.c0 GLOB t0.c0; -- expected: 1, actual: 2 Unexpectedly, the COUNT(*) computes that two rows are contained in the table, although only one was inserted: SELECT t0.c0 GLOB t0.c0 FROM t0; -- 1 Further simplification of the first query also shows that the database disk image is corrupted: SELECT * FROM t0 WHERE t0.c0 GLOB t0.c0; -- database disk image is malformed |