---
This commit is contained in:
@@ -0,0 +1,145 @@
|
||||
## 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 CHARACTER(20),
|
||||
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;
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS idx_T1_2131 ON T1(X COLLATE NOCASE) WHERE X IS NOT NULL;
|
||||
DELETE FROM T WHERE c > (SELECT AVG(c) FROM T) RETURNING *;
|
||||
|
||||
SELECT COUNT(*) FROM T1;
|
||||
DROP TRIGGER IF EXISTS T;
|
||||
UPDATE T SET a = CURRENT_TIMESTAMP WHERE rowid = 1;
|
||||
```
|
||||
|
||||
## Actual output
|
||||
|
||||
```sql
|
||||
|a||1
|
||||
Run Time: real 0.000 user 0.000122 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000063 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000018 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000010 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000010 sys 0.000000
|
||||
a
|
||||
b
|
||||
b
|
||||
Run Time: real 0.000 user 0.000030 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000035 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000007 sys 0.000000
|
||||
b|k
|
||||
Run Time: real 0.000 user 0.000007 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000029 sys 0.000000
|
||||
|a|
|
||||
2|b|1
|
||||
3|c|2
|
||||
Run Time: real 0.000 user 0.000009 sys 0.000000
|
||||
3
|
||||
Run Time: real 0.000 user 0.000011 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000049 sys 0.000000
|
||||
2026-05-15 11:40:59|k
|
||||
Run Time: real 0.000 user 0.000072 sys 0.000000
|
||||
a|m|a|m
|
||||
b|n|b|n
|
||||
Run Time: real 0.000 user 0.000025 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000014 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000003 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000062 sys 0.000000
|
||||
3|c|2
|
||||
Run Time: real 0.000 user 0.000037 sys 0.000000
|
||||
3
|
||||
Run Time: real 0.000 user 0.000007 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000003 sys 0.000000
|
||||
Run Time: real 0.000 user 0.000014 sys 0.000000
|
||||
```
|
||||
|
||||
## Expectation
|
||||
|
||||
```sql
|
||||
|a||1
|
||||
Run Time: real 0.000090 user 0.000102 sys 0.000000
|
||||
Run Time: real 0.000039 user 0.000040 sys 0.000000
|
||||
Run Time: real 0.000014 user 0.000013 sys 0.000000
|
||||
Run Time: real 0.000006 user 0.000008 sys 0.000000
|
||||
Run Time: real 0.000005 user 0.000006 sys 0.000000
|
||||
a
|
||||
b
|
||||
b
|
||||
Run Time: real 0.000024 user 0.000025 sys 0.000000
|
||||
Run Time: real 0.000028 user 0.000030 sys 0.000000
|
||||
Run Time: real 0.000007 user 0.000008 sys 0.000000
|
||||
b|k
|
||||
Run Time: real 0.000005 user 0.000005 sys 0.000000
|
||||
Run Time: real 0.000026 user 0.000024 sys 0.000000
|
||||
|a|
|
||||
2|b|1
|
||||
3|c|2
|
||||
Run Time: real 0.000005 user 0.000005 sys 0.000000
|
||||
3
|
||||
Run Time: real 0.000007 user 0.000007 sys 0.000000
|
||||
Run Time: real 0.000034 user 0.000034 sys 0.000000
|
||||
2026-05-15 11:40:59|k
|
||||
Run Time: real 0.000133 user 0.000099 sys 0.000000
|
||||
a|m|a|m
|
||||
b|n|b|n
|
||||
Run Time: real 0.000023 user 0.000023 sys 0.000000
|
||||
Run Time: real 0.000012 user 0.000013 sys 0.000000
|
||||
Run Time: real 0.000003 user 0.000004 sys 0.000000
|
||||
Run Time: real 0.000045 user 0.000046 sys 0.000000
|
||||
3|c|2
|
||||
Run Time: real 0.000036 user 0.000036 sys 0.000000
|
||||
3
|
||||
Run Time: real 0.000006 user 0.000007 sys 0.000000
|
||||
Run Time: real 0.000003 user 0.000003 sys 0.000000
|
||||
Run Time: real 0.000011 user 0.000013 sys 0.000000
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
```
|
||||
-vfs unix-dotfile
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user