Files
ast-project/part1/results/2/bug_d42dfd42-d1a0-487d-b426-c1cf7e9df032_logic.md
2026-06-24 13:47:14 +02:00

96 lines
3.0 KiB
Markdown

## Summary
<!--Explain briefly what goes wrong and explain why you believe this is a bug and not the intended behavior of SQLite (if it is not a crash).-->**No review yet**
## Minimized query
```sql
ATTACH DATABASE ':memory:' AS aux97;
.timer on
CREATE TEMPORARY TABLE t0(x, y, z);
SELECT -NULL;
SELECT * FROM sqlite_temp_master WHERE sql GLOB '000[]***';
DROP TABLE t0;
BEGIN IMMEDIATE;
.exit -log10(radians(json_group_object('k', -(-(json_array(1, NULL, 1))))))
PRAGMA read_uncommitted;
PRAGMA ignore_check_constraints = YES;
PRAGMA legacy_alter_table;
.parameter
CREATE TABLE t1(a, b, c, d);
CREATE UNIQUE INDEX i1 ON t1(b, c);
CREATE UNIQUE INDEX i2 ON t1(d COLLATE nocase);
CREATE TABLE t2(x DECIMAL(10,5) PRIMARY KEY, y);
CREATE TABLE t3(c1 PRIMARY KEY NOT NULL, c2 NOT NULL);
CREATE INDEX i3 ON t3(c2);
CREATE TABLE t4(a, b NOT NULL, c NOT NULL, d NOT NULL);
CREATE UNIQUE /* PRAGMA fullsync = 0; */ INDEX t4i1 ON t4(b, c);
CREATE UNIQUE INDEX t4i2 ON t4(d COLLATE nocase);
SELECT DISTINCT c FROM t1 WHERE NOT b = ?;
SELECT DISTINCT c FROM t1 WHERE b IN (1,2);
SELECT DISTINCT a, b, c COLLATE nocase FROM t1
PRAGMA integrity_check("users");
CREATE UNIQUE INDEX IF NOT EXISTS idx_t1_5148 ON t1(lower(c)) WHERE c > 0;
SELECT * FROM t1;
COMMIT;
SELECT COUNT(b) FROM t1;
INSERT INTO t2 DEFAULT VALUES;
WITH cte AS (SELECT * FROM t4) SELECT * FROM cte WHERE c > 0 UNION ALL SELECT * FROM cte WHERE c <= 0;
CREATE TEMP VIEW IF NOT EXISTS v_t1_244 AS SELECT c FROM t1;
INSERT INTO t1 SELECT * FROM t1;
ALTER TABLE t2 RENAME TO t2_r6544;
INSERT INTO t4 SELECT * FROM t4;
CREATE TRIGGER IF NOT EXISTS trg_t4_4171 BEFORE DELETE ON t4 FOR EACH ROW BEGIN SELECT RAISE(ROLLBACK, 'rb'); END;
VACUUM;
CREATE TABLE T (
a TEXT,
b TEXT
);
INSERT INTO T VALUES ('a','2020-01-01'), ('b','2026-01-01');
SELECT a,
CAST(
(julianday('now')-julianday(b))/365.25
AS INTEGER
) AS c
FROM T;
DETACH DATABASE aux97;
SELECT COUNT(*) FILTER (WHERE a IS NOT NULL), SUM(rowid) FILTER (WHERE a > 0), COUNT(*) FILTER (WHERE 1=0), COUNT(*) FILTER (WHERE 1=1), COUNT(*) FILTER (WHERE NULL), AVG(a) FILTER (WHERE a > 0 AND a < 100), COUNT(*) FILTER (WHERE typeof(a) = "text") FROM T;
SELECT * FROM T;
ALTER TABLE t2 ADD COLUMN extra_3261 FLOAT;
UPDATE t0 SET z = z + 1 WHERE 1;
WITH cte AS (SELECT CASE WHEN c IS NULL THEN 0 ELSE c END AS val FROM t1) SELECT * FROM cte;
PRAGMA page_size = 4096;
CREATE INDEX IF NOT EXISTS idx_t0_8372 ON t0(lower(y)) WHERE y IS NOT NULL;
PRAGMA recursive_triggers = 1;
ALTER TABLE t2 RENAME COLUMN x TO x_r3369;
```
## Actual output
```sql
Run Time: real 0.000 user 0.000148 sys 0.000000
Run Time: real 0.000 user 0.000013 sys 0.000000
Run Time: real 0.000 user 0.000024 sys 0.000000
Run Time: real 0.000 user 0.000095 sys 0.000000
Run Time: real 0.000 user 0.000007 sys 0.000000
```
## Expectation
```sql
Run Time: real 0.000081 user 0.000087 sys 0.000000
Run Time: real 0.000006 user 0.000006 sys 0.000000
Run Time: real 0.000011 user 0.000011 sys 0.000000
Run Time: real 0.000056 user 0.000056 sys 0.000000
Run Time: real 0.000003 user 0.000004 sys 0.000000
```
## Flag
```
```