Ticket Hash: | c2432ef9089ee73bd0d3885576c0e1f6b1ad02e9 | |||
Title: | Assertion fault due to column cache malfunction | |||
Status: | Fixed | Type: | Code_Defect | |
Severity: | Critical | Priority: | Immediate | |
Subsystem: | Unknown | Resolution: | Fixed | |
Last Modified: | 2018-06-11 18:07:17 | |||
Version Found In: | ||||
User Comments: | ||||
drh added on 2018-06-11 11:14:57:
The following SQL causes an assertion fault in SQLite 3.19.0 and later: CREATE TABLE t1(a INTEGER PRIMARY KEY,b UNIQUE); CREATE INDEX x1 ON t1(-b=b); INSERT INTO t1 VALUES(1,5),(6,2); REPLACE INTO t1 SELECT b,0 FROM t1; The assertion faults begin with check-in [e6e36b288fdf2]. However, further analysis suggests that that check-in merely exposed the problem and is not the actual cause of the problem. The underlying problem appears to be that the column-cache is attempting to reuse the value of a register that was never initialized to that column in the first place. This fault was found by OSSFuzz. |