---
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
## 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
|
||||
PRAGMA schema_version;
|
||||
ATTACH DATABASE ':memory:' AS aux27;
|
||||
PRAGMA max_page_count;
|
||||
.width json_array_insert(CAST(printf('%05d', -2147483649) AS DOUBLE PRECISION), '$.arr[0]', 1) 2 3
|
||||
PRAGMA fullsync = 1;
|
||||
BEGIN EXCLUSIVE TRANSACTION;
|
||||
.exit -jsonb_patch(1, 1)
|
||||
PRAGMA vdbe_trace = round(1);
|
||||
PRAGMA vdbe_debug = 0;
|
||||
PRAGMA automatic_index = 1;
|
||||
.limit COLUMN 5
|
||||
CREATE TABLE main.t1(a,b INT);
|
||||
INSERT INTO t1(a,b) VALUES(1,2),(3,3),(4,5);
|
||||
CREATE UNIQUE INDEX i1 ON t1(b,b,a,a,a,a,a,b,a);
|
||||
ANALYZE;
|
||||
DROP TABLE IF EXISTS sqlite_stat4;
|
||||
INSERT INTO sqlite_stat1 VALUES('t1','i1','30 30 30 2 2 2 2 2 2 2');
|
||||
ANALYZE sqlite_master;
|
||||
SELECT GROUP_CONCAT(a) FROM t1;
|
||||
CREATE TEMPORARY VIEW IF NOT EXISTS v_t1_7393 AS SELECT b FROM t1;
|
||||
DROP INDEX IF EXISTS t1;
|
||||
CREATE TABLE T (
|
||||
a INTEGER,
|
||||
b REAL,
|
||||
c REAL
|
||||
);
|
||||
INSERT INTO T VALUES (1,2.0,10.5), (1,-3.5,20.25), (2,9e999,-1.0);
|
||||
WITH d AS (SELECT a,SUM(b*c) AS e FROM T GROUP BY a) SELECT * FROM d;
|
||||
WITH cte AS (SELECT * FROM t1 WHERE b = (SELECT MAX(b) FROM t1)) SELECT * FROM cte;
|
||||
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;
|
||||
DROP VIEW IF EXISTS t1;
|
||||
COMMIT TRANSACTION;
|
||||
INSERT INTO T VALUES (NULL, NULL, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b, c = excluded.c;
|
||||
|
||||
SELECT COUNT(*) FROM t1;
|
||||
INSERT INTO t1 DEFAULT VALUES;
|
||||
INSERT INTO T DEFAULT VALUES;
|
||||
SELECT GROUP_CONCAT(a, '|') FROM t1;
|
||||
SELECT LEAD(c) OVER (PARTITION BY c ORDER BY c ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) FROM T;
|
||||
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 t1;
|
||||
SELECT * FROM t1;
|
||||
REINDEX T;
|
||||
REINDEX;
|
||||
ALTER TABLE t1 DROP COLUMN b;
|
||||
REINDEX t1;
|
||||
SELECT GROUP_CONCAT(b, '|') FROM t1;
|
||||
ALTER TABLE t1 RENAME COLUMN b TO b_r9688;
|
||||
SELECT * FROM T;
|
||||
SELECT * FROM t1 NATURAL JOIN t1;
|
||||
DELETE FROM t1 WHERE rowid = 30 RETURNING *;
|
||||
WITH a AS (SELECT * FROM T), b AS (SELECT * FROM a), c AS (SELECT * FROM b), d AS (SELECT * FROM c) SELECT * FROM d;
|
||||
DETACH DATABASE aux27;
|
||||
CREATE TEMP VIEW IF NOT EXISTS v_t1_362 AS SELECT a FROM t1;
|
||||
CREATE TRIGGER IF NOT EXISTS trg_t1_60 AFTER UPDATE ON t1 FOR EACH ROW BEGIN SELECT RAISE(FAIL, 'no'); END;
|
||||
INSERT INTO t1 VALUES (1, 'x') ON CONFLICT(a) DO UPDATE SET a = excluded.a, b = excluded.b;
|
||||
ALTER TABLE T ADD COLUMN extra_8526 TINYINT DEFAULT 0;
|
||||
DROP TABLE IF EXISTS t1;
|
||||
```
|
||||
|
||||
## Actual output
|
||||
|
||||
```sql
|
||||
0
|
||||
1073741823
|
||||
```
|
||||
|
||||
## Expectation
|
||||
|
||||
```sql
|
||||
0
|
||||
4294967294
|
||||
```
|
||||
|
||||
## Flag
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user