should be it

This commit is contained in:
2025-10-24 19:21:19 -05:00
parent a4b23fc57c
commit f09560c7b1
14047 changed files with 3161551 additions and 1 deletions

View File

@@ -0,0 +1,132 @@
# name: test/sql/storage/mix/large_updates_deletes_persistent_segment.test_slow
# description: Test large updates/deletes/insertions on persistent segments
# group: [mix]
# load the DB from disk
load __TEST_DIR__/updates_deletes_persistent_segments.db
statement ok
CREATE TABLE test(a INTEGER, b INTEGER);
statement ok
INSERT INTO test SELECT a,b FROM (VALUES (1, 3), (NULL, NULL)) tbl1(a,b), repeat(0,1000)
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 3 1000
NULL NULL 1000
# reload the database from disk
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 3 1000
NULL NULL 1000
statement ok
INSERT INTO test SELECT a,b FROM (VALUES (2, 2)) tbl1(a,b), repeat(0,347)
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 3 1000
2 2 347
NULL NULL 1000
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 3 1000
2 2 347
NULL NULL 1000
statement ok
INSERT INTO test SELECT a,b FROM (VALUES (3, 3)) tbl1(a,b), repeat(0,1987)
statement ok
UPDATE test SET b=4 WHERE a=1
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 4 1000
2 2 347
3 3 1987
NULL NULL 1000
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
1 4 1000
2 2 347
3 3 1987
NULL NULL 1000
statement ok
UPDATE test SET a=4, b=4 WHERE a=1
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
2 2 347
3 3 1987
4 4 1000
NULL NULL 1000
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
2 2 347
3 3 1987
4 4 1000
NULL NULL 1000
statement ok
UPDATE test SET b=5, a=6 WHERE a=4
statement ok
DELETE FROM test WHERE a=2
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
3 3 1987
6 5 1000
NULL NULL 1000
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
3 3 1987
6 5 1000
NULL NULL 1000
statement ok
UPDATE test SET b=7 WHERE a=3
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
3 7 1987
6 5 1000
NULL NULL 1000
restart
query III
SELECT a, b, COUNT(*) FROM test GROUP BY a, b ORDER BY a
----
3 7 1987
6 5 1000
NULL NULL 1000

View File

@@ -0,0 +1,44 @@
# name: test/sql/storage/mix/test_update_delete_mix.test_slow
# description: Test mix of updates and deletes with storage
# group: [mix]
# load the DB from disk
load __TEST_DIR__/test_mix.db
statement ok
CREATE TABLE test (a INTEGER, b INTEGER);
statement ok
INSERT INTO test VALUES (11, 22), (13, 22), (12, 21)
statement ok
BEGIN TRANSACTION;
loop i 0 1000
statement ok
UPDATE test SET b=b+1 WHERE a=11
endloop
query I
DELETE FROM test WHERE a=12
----
1
query II
SELECT a, b FROM test ORDER BY a
----
11 1022
13 22
statement ok
COMMIT
restart
query II
SELECT a, b FROM test ORDER BY a
----
11 1022
13 22

View File

@@ -0,0 +1,150 @@
# name: test/sql/storage/mix/test_update_delete_string.test
# description: Test updates/deletes and strings
# group: [mix]
# load the DB from disk
load __TEST_DIR__/test_string_update.db
# create a database and insert values
statement ok
CREATE TABLE test (a INTEGER, b STRING);
statement ok
INSERT INTO test VALUES (NULL, 'hello'), (13, 'abcdefgh'), (12, NULL)
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL hello
restart
statement ok
PRAGMA enable_verification
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL hello
query II
SELECT * FROM test WHERE a IS NULL
----
NULL hello
query I
UPDATE test SET b=NULL WHERE a IS NULL
----
1
query II
SELECT * FROM test WHERE a IS NULL
----
NULL NULL
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL NULL
restart
statement ok
DELETE FROM test WHERE a=12
restart
query II
SELECT a, b FROM test ORDER BY a
----
13 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
13 abcdefgh
NULL NULL
statement ok
INSERT INTO test VALUES (12, NULL)
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
12 NULL
13 abcdefgh
NULL NULL
statement ok
UPDATE test SET b='test123' WHERE a=12
query II
SELECT a, b FROM test ORDER BY a
----
12 test123
13 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
12 test123
13 abcdefgh
NULL NULL
statement ok
UPDATE test SET a=a+1
query II
SELECT a, b FROM test ORDER BY a
----
13 test123
14 abcdefgh
NULL NULL
restart
query II
SELECT a, b FROM test ORDER BY a
----
13 test123
14 abcdefgh
NULL NULL

View File

@@ -0,0 +1,70 @@
# name: test/sql/storage/mix/updates_deletes_big_table.test
# description: Test update/deletes on big table
# group: [mix]
# load the DB from disk
load __TEST_DIR__/updates_deletes_big_table.db
statement ok
CREATE TABLE test (a INTEGER);
statement ok
INSERT INTO test SELECT a FROM range(0, 1000) tbl1(a), repeat(0, 100) tbl2(b)
statement ok
UPDATE test SET a=2000 WHERE a=1
statement ok
DELETE FROM test WHERE a=2 OR a=17
query II
SELECT SUM(a), COUNT(a) FROM test
----
50148000 99800
query I
SELECT COUNT(a) FROM test WHERE a=0
----
100
query I
SELECT COUNT(a) FROM test WHERE a=1
----
0
query I
SELECT COUNT(a) FROM test WHERE a=2
----
0
query I
SELECT COUNT(a) FROM test WHERE a=17
----
0
restart
query II
SELECT SUM(a), COUNT(a) FROM test
----
50148000 99800
query I
SELECT COUNT(a) FROM test WHERE a=0
----
100
query I
SELECT COUNT(a) FROM test WHERE a=1
----
0
query I
SELECT COUNT(a) FROM test WHERE a=2
----
0
query I
SELECT COUNT(a) FROM test WHERE a=17
----
0

View File

@@ -0,0 +1,126 @@
# name: test/sql/storage/mix/updates_deletes_persistent_segments.test
# description: Test updates/deletes/insertions on persistent segments
# group: [mix]
# load the DB from disk
load __TEST_DIR__/updates_deletes_persistent_segments.db
statement ok
CREATE TABLE test(a INTEGER, b INTEGER);
statement ok
INSERT INTO test VALUES (1, 3), (NULL, NULL)
# reload the database from disk
restart
query II
SELECT * FROM test ORDER BY a
----
1 3
NULL NULL
statement ok
INSERT INTO test VALUES (2, 2)
query II
SELECT * FROM test ORDER BY a
----
1 3
2 2
NULL NULL
restart
query II
SELECT * FROM test ORDER BY a
----
1 3
2 2
NULL NULL
statement ok
INSERT INTO test VALUES (3, 3)
statement ok
UPDATE test SET b=4 WHERE a=1
query II
SELECT * FROM test ORDER BY a
----
1 4
2 2
3 3
NULL NULL
restart
query II
SELECT * FROM test ORDER BY a
----
1 4
2 2
3 3
NULL NULL
statement ok
UPDATE test SET a=4, b=4 WHERE a=1
query II
SELECT * FROM test ORDER BY a
----
2 2
3 3
4 4
NULL NULL
restart
query II
SELECT * FROM test ORDER BY a
----
2 2
3 3
4 4
NULL NULL
statement ok
UPDATE test SET b=5, a=6 WHERE a=4
statement ok
DELETE FROM test WHERE a=2
query II
SELECT * FROM test ORDER BY a
----
3 3
6 5
NULL NULL
restart
query II
SELECT * FROM test ORDER BY a
----
3 3
6 5
NULL NULL
statement ok
UPDATE test SET b=7 WHERE a=3
query II
SELECT * FROM test ORDER BY a
----
3 7
6 5
NULL NULL
restart
query II
SELECT * FROM test ORDER BY a
----
3 7
6 5
NULL NULL