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 |