SQLite

View Ticket
Login
Ticket Hash: 490a4b723562429807f13842ab2536997cca2491
Title: "WHERE 0" on the first element of a UNION causes an assertion fault
Status: Fixed Type: Code_Defect
Severity: Important Priority: Immediate
Subsystem: Unknown Resolution: Fixed
Last Modified: 2013-07-09 03:04:50
Version Found In: 3.7.17
User Comments:
drh added on 2013-07-09 02:24:58:

The following SQL script results in an assertion fault:

CREATE TABLE abc(a,b,c); INSERT INTO abc VALUES(1,2,3);
CREATE TABLE def(d,e,f); INSERT INTO def VALUES(3,4,5);
SELECT * FROM abc WHERE 0 UNION SELECT * FROM def;

This bug appears to have been in the code essentially forever. Incorrect VDBE code has been generated since version 3.3.7 (circa 2006) and prior to that the code generator segfaults.