Hi, We found some assertion bugs in sqlite: #1 — CREATE TABLE v0 ( v1 INTEGER PRIMARY KEY UNIQUE ) ; INSERT INTO v0 VALUES ( 10 ) ON CONFLICT DO NOTHING ; SELECT * FROM v0 NATURAL JOIN v0 AS y WHERE v1 IN ( SELECT DISTINCT v1 FROM v0 ORDER BY v1 );
sqlite3.c:100324: Select *isCandidateForInOpt(Expr *): Assertion `p->pGroupBy==0' failed. — This bug exists in the development code and release code. #2 — CREATE TABLE v0 ( v1 TEXT , v2 ) ; CREATE TABLE v3 ( v4 , v5 ) ; CREATE TABLE v6 ( v7 , v8 ) ; INSERT INTO v0 VALUES ( 10 , 2 ) ; INSERT INTO v6 VALUES ( 10 , 1 ) ; CREATE VIRTUAL TABLE v9 USING rtree ( v12 , v11 , v10 INTEGER UNIQUE ON CONFLICT IGNORE AS( v8 ) CHECK( v2 ) ) ; SELECT v4 , max ( v4 + v5 ) FROM v6 , v3 AS t ; CREATE TABLE v13 ( v15 INTEGER PRIMARY KEY , v14 INT ) ; INSERT INTO v0 ( v1 ) VALUES ( 2 ) ,( 10 ) ; SELECT * FROM v6 LEFT JOIN v9 ON v12 = 0 OR v11 = 10 WHERE v10 = v11 AND v11 = 10 ; (sqlite3.c:141119: Bitmask sqlite3WhereCodeOneLoopStart(Parse *, Vdbe *, WhereInfo *, int, WhereLevel *, Bitmask): Assertion `(pTerm->prereqRight & pLevel->notReady)!=0' failed.) — This bug exists in the development code. #3 — CREATE TABLE v0 ( v1 CHAR(2) UNIQUE PRIMARY KEY ON CONFLICT ROLLBACK ) ; CREATE TABLE v2 ( v3 INT ) ; CREATE INDEX v4 ON v0 ( v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 , v1 ) ; ANALYZE ; SELECT * FROM v2 LEFT JOIN v0 ON v1 = 0 WHERE ( v1 = 'MED P' OR v1 = 'DELIVER IN PERSON' ) AND v1 IS NOT NULL ; (Bitmask sqlite3WhereCodeOneLoopStart(Parse *, Vdbe *, WhereInfo *, int, WhereLevel *, Bitmask): Assertion `(pTabItem[0].fg.jointype & JT_LEFT)==0 || ExprHasProperty(pOrExpr, EP_FromJoin)’) — This bug exists in the development code. Yongheng & Rui _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users