## Summary **No review yet** ## Minimized query ```sql CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT, c INT, d INT); INSERT INTO t1 VALUES (1, ('Wernher' || ''), 10, 100); INSERT INTO t1 VALUES (2, 'von', 20, 200); INSERT INTO t1 VALUES (3, 'Braun', 30, 300); CREATE INDEX t1bc ON t1(b, c); PRAGMA writable_schema = ON; .imposter t1bc t2 SELECT * FROM t2; SELECT b, c FROM t1 ORDER BY b, c; .quit SAVEPOINT sp5525; -- changes() PRAGMA compile_options; CREATE TABLE t1(x INTEGER PRIMARY KEY, y, z); CREATE TABLE t2(a, b); CREATE TABLE T ( a TEXT, b TEXT, c REAL ); INSERT INTO T VALUES ('a','b','-'), ('a','c',-1222056731234344303), ('b','b',4.75); SELECT a, SUM(CASE WHEN b!='b' THEN c ELSE 0 END) AS d, SUM(CASE WHEN b='c' THEN c ELSE 0 END) AS e FROM T GROUP BY a; CREATE VIEW agg2 AS SELECT a, sum(b) AS m FROM t2 GROUP BY a; SELECT t1.z, agg2.m FROM t1 JOIN agg2 ON t1.y==agg2.m WHERE NOT NOT (t1.x IN (1,2,3)) ; CREATE TABLE t920(x); INSERT INTO t920 VALUES(3),(4),(5); SELECT * FROM t920,(SELECT 0 FROM t920),(VALUES(9)) WHERE 5 IN (x); PRAGMA fullsync = 0; CREATE INDEX IF NOT EXISTS idx_t2_788 ON t2(lower(a)) WHERE +a > 0; ALTER TABLE t1 RENAME COLUMN y TO y_r8132; DELETE FROM t920 WHERE +x > (SELECT AVG(x) FROM t920) RETURNING *; SELECT * FROM t2; ALTER TABLE t920 ADD COLUMN extra_3469 NCHAR(55) DEFAULT 0; SELECT * FROM T; SELECT AVG(b) FROM t2; DELETE FROM t2 WHERE +a > (SELECT AVG(a) FROM t2); RELEASE sp5525; SELECT * FROM (SELECT * FROM t1) AS sub; SELECT a, (SELECT MAX(a) FROM t2) AS max_val FROM t2; INSERT INTO t2 SELECT * FROM t2; INSERT INTO t920 SELECT * FROM t920; UPDATE T SET b = json_object('k', b) WHERE 1; UPDATE t2 SET b = 'x' WHERE b BETWEEN 0 AND 100; CREATE VIEW IF NOT EXISTS v_t2_1374 AS SELECT a FROM t2; ``` ## Actual output ```sql CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID; WARNING: writing to an imposter table will corrupt the "t1bc" index! Braun|30|3 Wernher|10|1 von|20|2 Braun|30 Wernher|10 von|20 ``` ## Expectation ```sql CREATE TABLE "t2"("b","c","_ROWID_",PRIMARY KEY("b","c","_ROWID_"))WITHOUT ROWID; Braun|30|3 Wernher|10|1 von|20|2 Braun|30 Wernher|10 von|20 ``` ## Flag ``` ```