Files
ast-project/part1/results/2/bug_da049370-e9fb-40ec-a8a9-cb53e901a1fa_logic.md
T
2026-06-24 13:47:14 +02:00

126 lines
3.2 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
.progress 9999
PRAGMA cell_size_check = NO;
ATTACH DATABASE ':memory:' AS aux65;
CREATE TABLE T (
a VARCHAR(255),
b TEXT,
c INTEGER
);
INSERT INTO T VALUES (NULL,'a',NULL), (2,'b',1), (3,'c',2);
WITH RECURSIVE d(a,b,c,e) AS (
SELECT *,1 FROM T WHERE c IS NULL
UNION ALL
SELECT T.a,T.b,T.c,d.e+1
FROM T JOIN d ON T.c=d.a
)
SELECT * FROM d;
.timer on
CREATE TABLE T1 (
A VARCHAR(-1445937777629738465),
X VARCHAR(10),
PRIMARY KEY (A, X),
UNIQUE (X)
);
CREATE TABLE T2 (
A VARCHAR(20),
Y VARCHAR(10) UNIQUE,
PRIMARY KEY (A, Y)
);
INSERT INTO T1 VALUES ('a', 'm');
INSERT INTO T1 VALUES ('b', 'n');
INSERT INTO T2 VALUES ('b', 'k');
SELECT A FROM T1 UNION ALL SELECT A FROM T2 ORDER BY A;
SELECT * FROM T1 WHERE X < (SELECT MIN(X) FROM T1);
DETACH DATABASE aux65;
SELECT * FROM T2;
UPDATE T2 SET Y = '' WHERE Y BETWEEN 0 AND 100;
SELECT * FROM T;
SELECT COUNT(b) FROM T;
CREATE TRIGGER IF NOT EXISTS trg_T2_7744 AFTER INSERT ON T2 BEGIN SELECT RAISE(ABORT, 'abort'); END;
UPDATE T2 SET A = CURRENT_TIMESTAMP WHERE 1 RETURNING *;
SELECT * FROM T1 AS a INNER JOIN T1 AS b ON a.rowid = b.rowid;
INSERT INTO T1 VALUES (NULL, NULL);
PRAGMA vdbe_listing = 1;
```
## Actual output
```sql
|a||1
Run Time: real 0.001 user 0.000000 sys 0.000128
Run Time: real 0.000 user 0.000000 sys 0.000059
Run Time: real 0.000 user 0.000000 sys 0.000017
Run Time: real 0.000 user 0.000000 sys 0.000010
Run Time: real 0.000 user 0.000000 sys 0.000009
a
b
b
Run Time: real 0.000 user 0.000000 sys 0.000031
Run Time: real 0.000 user 0.000000 sys 0.000041
Run Time: real 0.000 user 0.000000 sys 0.000006
b|k
Run Time: real 0.000 user 0.000000 sys 0.000007
Run Time: real 0.000 user 0.000000 sys 0.000029
|a|
2|b|1
3|c|2
Run Time: real 0.000 user 0.000000 sys 0.000008
3
Run Time: real 0.000 user 0.000000 sys 0.000009
Run Time: real 0.000 user 0.000000 sys 0.000045
2026-05-15 11:40:11|k
Run Time: real 0.000 user 0.000000 sys 0.000071
a|m|a|m
b|n|b|n
Run Time: real 0.000 user 0.000000 sys 0.000023
Run Time: real 0.000 user 0.000000 sys 0.000012
Run Time: real 0.000 user 0.000000 sys 0.000003
```
## Expectation
```sql
|a||1
Run Time: real 0.000051 user 0.000000 sys 0.000061
Run Time: real 0.000030 user 0.000000 sys 0.000030
Run Time: real 0.000010 user 0.000000 sys 0.000010
Run Time: real 0.000005 user 0.000000 sys 0.000006
Run Time: real 0.000005 user 0.000000 sys 0.000005
a
b
b
Run Time: real 0.000015 user 0.000000 sys 0.000015
Run Time: real 0.000021 user 0.000000 sys 0.000021
Run Time: real 0.000004 user 0.000000 sys 0.000004
b|k
Run Time: real 0.000003 user 0.000000 sys 0.000003
Run Time: real 0.000015 user 0.000000 sys 0.000015
|a|
2|b|1
3|c|2
Run Time: real 0.000004 user 0.000000 sys 0.000004
3
Run Time: real 0.000004 user 0.000000 sys 0.000005
Run Time: real 0.000024 user 0.000000 sys 0.000024
2026-05-15 11:40:11|k
Run Time: real 0.000052 user 0.000000 sys 0.000052
a|m|a|m
b|n|b|n
Run Time: real 0.000013 user 0.000000 sys 0.000013
Run Time: real 0.000007 user 0.000000 sys 0.000007
Run Time: real 0.000002 user 0.000000 sys 0.000002
```
## Flag
```
```