should be it
This commit is contained in:
40
external/duckdb/test/sql/storage/metadata/full_table_metadata_reuse.test
vendored
Normal file
40
external/duckdb/test/sql/storage/metadata/full_table_metadata_reuse.test
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
# name: test/sql/storage/metadata/full_table_metadata_reuse.test
|
||||
# description: Test full table metadata reuse
|
||||
# group: [metadata]
|
||||
|
||||
load __TEST_DIR__/full_table_metadata_reuse.test.db
|
||||
|
||||
statement ok
|
||||
BEGIN
|
||||
|
||||
statement ok
|
||||
CREATE TABLE bigtbl(i INT);
|
||||
|
||||
statement ok
|
||||
INSERT INTO bigtbl FROM range(1000000)
|
||||
|
||||
statement ok
|
||||
CREATE TABLE little_tbl(i INT);
|
||||
|
||||
statement ok
|
||||
COMMIT
|
||||
|
||||
|
||||
loop i 1 10
|
||||
|
||||
statement ok
|
||||
INSERT INTO little_tbl VALUES (1)
|
||||
|
||||
query I
|
||||
SELECT SUM(i)=${i} FROM little_tbl
|
||||
----
|
||||
true
|
||||
|
||||
query II
|
||||
SELECT COUNT(*), SUM(i) FROM bigtbl
|
||||
----
|
||||
1000000 499999500000
|
||||
|
||||
restart
|
||||
|
||||
endloop
|
||||
49
external/duckdb/test/sql/storage/metadata/full_table_metadata_reuse_nested.test_slow
vendored
Normal file
49
external/duckdb/test/sql/storage/metadata/full_table_metadata_reuse_nested.test_slow
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
# name: test/sql/storage/metadata/full_table_metadata_reuse_nested.test_slow
|
||||
# description: Test full table metadata reuse of complex nested data
|
||||
# group: [metadata]
|
||||
|
||||
load __TEST_DIR__/full_table_metadata_reuse_nested.test.db
|
||||
|
||||
statement ok
|
||||
BEGIN
|
||||
|
||||
statement ok
|
||||
CREATE TABLE complex_nested(s STRUCT(i INT, j INT[], k VARCHAR, l INT[], i1 INT, i2 INT, i3 INT, i4 INT, i5 INT, i6 INT, i7 INT, i8 INT, i9 INT, i10 INT, i11 INT, i12 INT, i13 INT, i14 INT, i15 INT, i16 INT, i17 INT, i18 INT, i19 INT, i20 INT, i21 INT, i22 INT, i23 INT, i24 INT, i25 INT, i26 INT, i27 INT, i28 INT, i29 INT, i30 INT, i31 INT, i32 INT, i33 INT, i34 INT, i35 INT, i36 INT, i37 INT, i38 INT, i39 INT, i40 INT, i41 INT, i42 INT, i43 INT, i44 INT, i45 INT, i46 INT, i47 INT, i48 INT, i49 INT, i50 INT));
|
||||
|
||||
statement ok
|
||||
INSERT INTO complex_nested SELECT ROW(r, range(10), 'hello world', range(90, 100), r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r) s FROM range(1000000) t(r)
|
||||
|
||||
statement ok
|
||||
CREATE TABLE complex_nested2 AS FROM complex_nested
|
||||
|
||||
statement ok
|
||||
COMMIT
|
||||
|
||||
|
||||
loop i 1 10
|
||||
|
||||
statement ok
|
||||
INSERT INTO complex_nested2 FROM complex_nested2 LIMIT 1
|
||||
|
||||
statement ok
|
||||
CHECKPOINT
|
||||
|
||||
restart
|
||||
|
||||
endloop
|
||||
|
||||
query IIIII
|
||||
SELECT COUNT(*), SUM(t.i), SUM(LEN(t.j)), SUM(LEN(t.k)), SUM(LIST_SUM([*COLUMNS('i\d+')])) FROM (SELECT UNNEST(s) FROM complex_nested) t
|
||||
----
|
||||
1000000 499999500000 10000000 11000000 24999975000000
|
||||
|
||||
statement ok
|
||||
INSERT INTO complex_nested FROM complex_nested LIMIT 1
|
||||
|
||||
statement ok
|
||||
CHECKPOINT
|
||||
|
||||
query IIIII
|
||||
SELECT COUNT(*), SUM(t.i), SUM(LEN(t.j)), SUM(LEN(t.k)), SUM(LIST_SUM([*COLUMNS('i\d+')])) FROM (SELECT UNNEST(s) FROM complex_nested) t
|
||||
----
|
||||
1000001 499999500000 10000010 11000011 24999975000000
|
||||
58
external/duckdb/test/sql/storage/metadata/multi_table_metadata_reuse.test
vendored
Normal file
58
external/duckdb/test/sql/storage/metadata/multi_table_metadata_reuse.test
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
# name: test/sql/storage/metadata/multi_table_metadata_reuse.test
|
||||
# description: Test metadata reuse with multiple tables and restarts
|
||||
# group: [metadata]
|
||||
|
||||
load __TEST_DIR__/multi_table_metadata_reuse.db
|
||||
|
||||
statement ok
|
||||
SET experimental_metadata_reuse=true;
|
||||
|
||||
statement ok
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
statement ok
|
||||
CREATE TABLE ducklake_table(end_snapshot BIGINT);
|
||||
|
||||
statement ok
|
||||
CREATE TABLE ducklake_column(end_snapshot BIGINT);
|
||||
|
||||
statement ok
|
||||
COMMIT;
|
||||
|
||||
restart
|
||||
|
||||
statement ok
|
||||
SET experimental_metadata_reuse=true;
|
||||
|
||||
statement ok
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
statement ok
|
||||
INSERT INTO ducklake_table VALUES (1);
|
||||
|
||||
statement ok
|
||||
INSERT INTO ducklake_column VALUES (1);
|
||||
|
||||
statement ok
|
||||
COMMIT;
|
||||
|
||||
restart
|
||||
|
||||
statement ok
|
||||
SET experimental_metadata_reuse=true;
|
||||
|
||||
statement ok
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
statement ok
|
||||
UPDATE ducklake_table SET end_snapshot = 3
|
||||
|
||||
statement ok
|
||||
UPDATE ducklake_column SET end_snapshot = 3
|
||||
|
||||
statement ok
|
||||
COMMIT;
|
||||
|
||||
statement ok
|
||||
CREATE TABLE my_table (a INTEGER, b INTEGER);
|
||||
|
||||
32
external/duckdb/test/sql/storage/metadata/partial_table_metadata_reuse.test
vendored
Normal file
32
external/duckdb/test/sql/storage/metadata/partial_table_metadata_reuse.test
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
# name: test/sql/storage/metadata/partial_table_metadata_reuse.test
|
||||
# description: Test partial table metadata reuse
|
||||
# group: [metadata]
|
||||
|
||||
load __TEST_DIR__/partial_table_metadata_reuse.test.db
|
||||
|
||||
statement ok
|
||||
BEGIN
|
||||
|
||||
statement ok
|
||||
CREATE TABLE bigtbl(i INT);
|
||||
|
||||
statement ok
|
||||
INSERT INTO bigtbl FROM range(1000000)
|
||||
|
||||
statement ok
|
||||
COMMIT
|
||||
|
||||
|
||||
loop i 1 10
|
||||
|
||||
statement ok
|
||||
INSERT INTO bigtbl VALUES (NULL)
|
||||
|
||||
query II
|
||||
SELECT COUNT(*) - ${i}, SUM(i) FROM bigtbl
|
||||
----
|
||||
1000000 499999500000
|
||||
|
||||
restart
|
||||
|
||||
endloop
|
||||
35
external/duckdb/test/sql/storage/metadata/partial_table_metadata_reuse_nested.test_slow
vendored
Normal file
35
external/duckdb/test/sql/storage/metadata/partial_table_metadata_reuse_nested.test_slow
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
# name: test/sql/storage/metadata/partial_table_metadata_reuse_nested.test_slow
|
||||
# description: Test full table metadata reuse of complex nested data
|
||||
# group: [metadata]
|
||||
|
||||
load __TEST_DIR__/partial_table_metadata_reuse_nested.test.db
|
||||
|
||||
statement ok
|
||||
BEGIN
|
||||
|
||||
statement ok
|
||||
CREATE TABLE complex_nested(s STRUCT(i INT, j INT[], k VARCHAR, l INT[], i1 INT, i2 INT, i3 INT, i4 INT, i5 INT, i6 INT, i7 INT, i8 INT, i9 INT, i10 INT, i11 INT, i12 INT, i13 INT, i14 INT, i15 INT, i16 INT, i17 INT, i18 INT, i19 INT, i20 INT, i21 INT, i22 INT, i23 INT, i24 INT, i25 INT, i26 INT, i27 INT, i28 INT, i29 INT, i30 INT, i31 INT, i32 INT, i33 INT, i34 INT, i35 INT, i36 INT, i37 INT, i38 INT, i39 INT, i40 INT, i41 INT, i42 INT, i43 INT, i44 INT, i45 INT, i46 INT, i47 INT, i48 INT, i49 INT, i50 INT));
|
||||
|
||||
statement ok
|
||||
INSERT INTO complex_nested SELECT ROW(r, range(10), 'hello world', range(90, 100), r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r, r) s FROM range(1000000) t(r)
|
||||
|
||||
statement ok
|
||||
COMMIT
|
||||
|
||||
|
||||
loop i 0 10
|
||||
|
||||
statement ok
|
||||
INSERT INTO complex_nested DEFAULT VALUES
|
||||
|
||||
statement ok
|
||||
CHECKPOINT
|
||||
|
||||
restart
|
||||
|
||||
endloop
|
||||
|
||||
query IIIII
|
||||
SELECT COUNT(*), SUM(t.i), SUM(LEN(t.j)), SUM(LEN(t.k)), SUM(LIST_SUM([*COLUMNS('i\d+')])) FROM (SELECT UNNEST(s) FROM complex_nested) t
|
||||
----
|
||||
1000010 499999500000 10000000 11000000 24999975000000
|
||||
Reference in New Issue
Block a user