mirror of https://github.com/citusdata/citus.git
Add footer off setting to upgrade_columnar test scripts
parent
15ecb4bc64
commit
2c0c73884c
|
|
@ -1,4 +1,5 @@
|
|||
SET search_path TO upgrade_columnar, public;
|
||||
\pset footer off
|
||||
-- test we retained data
|
||||
SELECT * FROM test_retains_data ORDER BY a;
|
||||
a | b | c | d
|
||||
|
|
@ -6,13 +7,11 @@ SELECT * FROM test_retains_data ORDER BY a;
|
|||
1 | abc | (1,4) | {1,2,3,4}
|
||||
2 | pi | (3,192) | {3,1,4,1,5}
|
||||
3 | earth | (4,22) | {1,2,7,5,6}
|
||||
(3 rows)
|
||||
|
||||
SELECT count(*) FROM test_retains_data;
|
||||
count
|
||||
---------------------------------------------------------------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
SELECT a,c FROM test_retains_data ORDER BY a;
|
||||
a | c
|
||||
|
|
@ -20,7 +19,6 @@ SELECT a,c FROM test_retains_data ORDER BY a;
|
|||
1 | (1,4)
|
||||
2 | (3,192)
|
||||
3 | (4,22)
|
||||
(3 rows)
|
||||
|
||||
SELECT b,d FROM test_retains_data ORDER BY a;
|
||||
b | d
|
||||
|
|
@ -28,7 +26,6 @@ SELECT b,d FROM test_retains_data ORDER BY a;
|
|||
abc | {1,2,3,4}
|
||||
pi | {3,1,4,1,5}
|
||||
earth | {1,2,7,5,6}
|
||||
(3 rows)
|
||||
|
||||
SELECT * FROM test_retains_data ORDER BY a;
|
||||
a | b | c | d
|
||||
|
|
@ -36,7 +33,6 @@ SELECT * FROM test_retains_data ORDER BY a;
|
|||
1 | abc | (1,4) | {1,2,3,4}
|
||||
2 | pi | (3,192) | {3,1,4,1,5}
|
||||
3 | earth | (4,22) | {1,2,7,5,6}
|
||||
(3 rows)
|
||||
|
||||
-- test we retained data with a once truncated table
|
||||
SELECT * FROM test_truncated ORDER BY a;
|
||||
|
|
@ -45,7 +41,6 @@ SELECT * FROM test_truncated ORDER BY a;
|
|||
11
|
||||
12
|
||||
13
|
||||
(3 rows)
|
||||
|
||||
-- test we retained data with a once vacuum fulled table
|
||||
SELECT * FROM test_vacuum_full ORDER BY a;
|
||||
|
|
@ -64,7 +59,6 @@ SELECT * FROM test_vacuum_full ORDER BY a;
|
|||
11
|
||||
12
|
||||
13
|
||||
(13 rows)
|
||||
|
||||
-- test we retained data with a once alter typed table
|
||||
SELECT * FROM test_alter_type ORDER BY a;
|
||||
|
|
@ -83,7 +77,6 @@ SELECT * FROM test_alter_type ORDER BY a;
|
|||
7
|
||||
8
|
||||
9
|
||||
(13 rows)
|
||||
|
||||
-- test we retained data with a once refreshed materialized view
|
||||
SELECT * FROM matview ORDER BY a;
|
||||
|
|
@ -91,14 +84,12 @@ SELECT * FROM matview ORDER BY a;
|
|||
---------------------------------------------------------------------
|
||||
0 | {abc,pi}
|
||||
1 | {earth}
|
||||
(2 rows)
|
||||
|
||||
-- test we retained options
|
||||
SELECT * FROM columnar.options WHERE relation = 'test_options_1'::regclass;
|
||||
relation | chunk_group_row_limit | stripe_row_limit | compression | compression_level
|
||||
---------------------------------------------------------------------
|
||||
test_options_1 | 1000 | 5000 | pglz | 3
|
||||
(1 row)
|
||||
|
||||
VACUUM VERBOSE test_options_1;
|
||||
INFO: statistics for "test_options_1":
|
||||
|
|
@ -112,13 +103,11 @@ SELECT count(*), sum(a), sum(b) FROM test_options_1;
|
|||
count | sum | sum
|
||||
---------------------------------------------------------------------
|
||||
10000 | 50005000 | 45010
|
||||
(1 row)
|
||||
|
||||
SELECT * FROM columnar.options WHERE relation = 'test_options_2'::regclass;
|
||||
relation | chunk_group_row_limit | stripe_row_limit | compression | compression_level
|
||||
---------------------------------------------------------------------
|
||||
test_options_2 | 2000 | 6000 | none | 13
|
||||
(1 row)
|
||||
|
||||
VACUUM VERBOSE test_options_2;
|
||||
INFO: statistics for "test_options_2":
|
||||
|
|
@ -132,7 +121,6 @@ SELECT count(*), sum(a), sum(b) FROM test_options_2;
|
|||
count | sum | sum
|
||||
---------------------------------------------------------------------
|
||||
20000 | 100010000 | 65015
|
||||
(1 row)
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO less_common_data_types_table (dist_key,col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col30, col32, col33, col34, col35, col36, col37, col38)
|
||||
|
|
@ -147,7 +135,6 @@ BEGIN;
|
|||
---------------------------------------------------------------------
|
||||
7 | {1} | {{0,0,0}} | {{{0,0,0}}} | {1} | {{0,0,0}} | {{{0,0,0}}} | 1 | {1} | {{0,0,0}} | {{{0,0,0}}} | 11101 | {1} | {{01,01,01}} | {{{011,110,0000}}} | \xb4a8e04c0b | {"\\xb4a8e04c0b"} | {{"\\xb4a8e04c0b","\\xb4a8e04c0b","\\xb4a8e04c0b"}} | {{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}}} | t | {t} | {{t,t,f}} | {{{t,t,f}}} | 192.168.1.0/24 | {192.168.1.1} | {{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}} | {{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}} | 08:00:2b:01:02:03 | {08:00:2b:01:02:03} | {{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}} | {{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}} | 690 | {1.1} | {{0,0.111,0.15}} | {{{0,0,0}}} | {"test_json": "test"} | {"{\"test_json\": \"test\"}"} | {{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}} | {{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}}}
|
||||
8 | {1,2,3} | {{1,2,3},{5,6,7}} | {{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}} | {1,2,3} | {{1,2,3},{5,6,7}} | {{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}} | 0 | {1,0,0} | {{1,1,0},{0,0,1}} | {{{1,1,1}},{{1,0,0}},{{1,1,1}},{{0,0,0}}} | 00010 | {11,10,01} | {{11,010,101},{101,01111,1000001}} | {{{10000,111111,1101010101}},{{1101010,0,1}},{{1,1,11111111}},{{0000000,0,0}}} | \xb4a8e04c0b | {"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"} | {{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"},{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}} | {{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}}} | t | {t,t,f} | {{t,t,f},{t,t,f}} | {{{t,t,f}},{{t,t,f}},{{t,t,f}},{{t,t,f}}} | 0.0.0.0 | {0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24} | {{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}} | {{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}} | 08:00:2b:01:02:03 | {08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03} | {{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}} | {{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}} | 0.99 | {1.1,2.22,3.33} | {{1.55,2.66,3.88},{11.5,10101.6,7111.1}} | {{{1,2,3}},{{5,6,7}},{{1.1,2.1,3}},{{5.0,6.0,7.0}}} | {"test_json": "test"} | {"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"} | {{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"},{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}} | {{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}}}
|
||||
(2 rows)
|
||||
|
||||
ROLLBACK;
|
||||
-- count DISTINCT w/wout dist key
|
||||
|
|
@ -158,7 +145,6 @@ ORDER BY 1 DESC;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
2
|
||||
(1 row)
|
||||
|
||||
SELECT count(DISTINCT(dist_key, col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col32, col33, col34, col35, col36, col37, col38))
|
||||
FROM
|
||||
|
|
@ -167,7 +153,6 @@ ORDER BY 1 DESC;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
4
|
||||
(1 row)
|
||||
|
||||
-- some batch loads via INSERT .. SELECT
|
||||
INSERT INTO less_common_data_types_table SELECT * FROM less_common_data_types_table;
|
||||
|
|
@ -178,20 +163,18 @@ SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 =
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
1
|
||||
(1 row)
|
||||
|
||||
-- make sure that we test index scan
|
||||
set columnar.enable_custom_scan to 'off';
|
||||
set enable_seqscan to off;
|
||||
set seq_page_cost TO 10000000;
|
||||
EXPLAIN (costs off, timing off, summary off, analyze on, BUFFERS OFF)
|
||||
EXPLAIN (costs off, timing off, summary off, analyze off, BUFFERS OFF)
|
||||
SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 = ARRAY[1];
|
||||
QUERY PLAN
|
||||
---------------------------------------------------------------------
|
||||
Aggregate (actual rows=1 loops=1)
|
||||
-> Index Scan using non_unique_index_on_columnar on less_common_data_types_table (actual rows=1 loops=1)
|
||||
Aggregate
|
||||
-> Index Scan using non_unique_index_on_columnar on less_common_data_types_table
|
||||
Index Cond: ((dist_key = 1) AND (col1 = '{1}'::integer[]))
|
||||
(3 rows)
|
||||
|
||||
-- make sure that we re-enable columnar scan
|
||||
RESET columnar.enable_custom_scan;
|
||||
|
|
@ -226,7 +209,6 @@ BEGIN;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
22
|
||||
(1 row)
|
||||
|
||||
-- Make sure that serial is preserved.
|
||||
--
|
||||
|
|
@ -237,7 +219,6 @@ BEGIN;
|
|||
?column?
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
-- since we run "after schedule" twice, rollback the transaction
|
||||
-- to avoid getting "table already exists" errors
|
||||
|
|
@ -287,7 +268,6 @@ UNION
|
|||
(TABLE columnar_schema_members_pg_depend EXCEPT TABLE columnar_schema_members);
|
||||
oid
|
||||
---------------------------------------------------------------------
|
||||
(0 rows)
|
||||
|
||||
-- ... , and both columnar_schema_members_pg_depend & columnar_schema_members
|
||||
-- should have 5 entries.
|
||||
|
|
@ -295,7 +275,6 @@ SELECT COUNT(*)=5 FROM columnar_schema_members_pg_depend;
|
|||
?column?
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
DROP TABLE columnar_schema_members, columnar_schema_members_pg_depend;
|
||||
-- Check the same for workers too.
|
||||
|
|
@ -324,7 +303,6 @@ $$
|
|||
---------------------------------------------------------------------
|
||||
t | SELECT 5
|
||||
t | SELECT 5
|
||||
(2 rows)
|
||||
|
||||
SELECT success, result FROM run_command_on_workers(
|
||||
$$
|
||||
|
|
@ -337,7 +315,6 @@ $$
|
|||
---------------------------------------------------------------------
|
||||
t |
|
||||
t |
|
||||
(2 rows)
|
||||
|
||||
SELECT success, result FROM run_command_on_workers(
|
||||
$$
|
||||
|
|
@ -348,7 +325,6 @@ $$
|
|||
---------------------------------------------------------------------
|
||||
t | t
|
||||
t | t
|
||||
(2 rows)
|
||||
|
||||
SELECT success, result FROM run_command_on_workers(
|
||||
$$
|
||||
|
|
@ -359,5 +335,4 @@ $$
|
|||
---------------------------------------------------------------------
|
||||
t | DROP TABLE
|
||||
t | DROP TABLE
|
||||
(2 rows)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
SET client_min_messages TO WARNING;
|
||||
CREATE EXTENSION IF NOT EXISTS citus_columnar;
|
||||
RESET client_min_messages;
|
||||
\pset footer off
|
||||
-- Test if relying on topological sort of the objects, not their names, works
|
||||
-- fine when re-creating objects during pg_upgrade.
|
||||
DO
|
||||
|
|
@ -38,7 +39,6 @@ SELECT 1 FROM run_command_on_workers($$CREATE SCHEMA IF NOT EXISTS public$$);
|
|||
---------------------------------------------------------------------
|
||||
1
|
||||
1
|
||||
(2 rows)
|
||||
|
||||
-- create a columnar table within citus_schema
|
||||
CREATE TABLE new_columnar_table (
|
||||
|
|
@ -69,7 +69,6 @@ SELECT count(*) FROM test_truncated;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
10
|
||||
(1 row)
|
||||
|
||||
SELECT relfilenode AS relfilenode_pre_truncate
|
||||
FROM pg_class WHERE oid = 'test_truncated'::regclass::oid \gset
|
||||
|
|
@ -80,14 +79,12 @@ SELECT :relfilenode_post_truncate <> :relfilenode_pre_truncate AS relfilenode_ch
|
|||
relfilenode_changed
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
INSERT INTO test_truncated SELECT * FROM generate_series(11, 13);
|
||||
SELECT count(*) FROM test_truncated;
|
||||
count
|
||||
---------------------------------------------------------------------
|
||||
3
|
||||
(1 row)
|
||||
|
||||
-- vacuum full
|
||||
CREATE TABLE test_vacuum_full (a int) USING columnar;
|
||||
|
|
@ -96,7 +93,6 @@ SELECT count(*) FROM test_vacuum_full;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
10
|
||||
(1 row)
|
||||
|
||||
SELECT relfilenode AS relfilenode_pre_vacuum_full
|
||||
FROM pg_class WHERE oid = 'test_vacuum_full'::regclass::oid \gset
|
||||
|
|
@ -107,14 +103,12 @@ SELECT :relfilenode_post_vacuum_full <> :relfilenode_pre_vacuum_full AS relfilen
|
|||
relfilenode_changed
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
INSERT INTO test_vacuum_full SELECT * FROM generate_series(11, 13);
|
||||
SELECT count(*) FROM test_vacuum_full;
|
||||
count
|
||||
---------------------------------------------------------------------
|
||||
13
|
||||
(1 row)
|
||||
|
||||
-- alter column type
|
||||
CREATE TABLE test_alter_type (a int) USING columnar;
|
||||
|
|
@ -123,7 +117,6 @@ SELECT count(*) FROM test_alter_type;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
10
|
||||
(1 row)
|
||||
|
||||
SELECT relfilenode AS relfilenode_pre_alter
|
||||
FROM pg_class WHERE oid = 'test_alter_type'::regclass::oid \gset
|
||||
|
|
@ -134,14 +127,12 @@ SELECT :relfilenode_pre_alter <> :relfilenode_post_alter AS relfilenode_changed;
|
|||
relfilenode_changed
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
INSERT INTO test_alter_type SELECT * FROM generate_series(11, 13);
|
||||
SELECT count(*) FROM test_alter_type;
|
||||
count
|
||||
---------------------------------------------------------------------
|
||||
13
|
||||
(1 row)
|
||||
|
||||
-- materialized view
|
||||
CREATE MATERIALIZED VIEW matview(a, b) USING columnar AS
|
||||
|
|
@ -155,7 +146,6 @@ SELECT :relfilenode_pre_alter <> :relfilenode_post_alter AS relfilenode_changed;
|
|||
relfilenode_changed
|
||||
---------------------------------------------------------------------
|
||||
t
|
||||
(1 row)
|
||||
|
||||
--
|
||||
-- Test that we retain options
|
||||
|
|
@ -171,25 +161,21 @@ SELECT alter_columnar_table_set('test_options_2', chunk_group_row_limit => 2000)
|
|||
alter_columnar_table_set
|
||||
---------------------------------------------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
SELECT alter_columnar_table_set('test_options_2', stripe_row_limit => 6000);
|
||||
alter_columnar_table_set
|
||||
---------------------------------------------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
SELECT alter_columnar_table_set('test_options_2', compression => 'none');
|
||||
alter_columnar_table_set
|
||||
---------------------------------------------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
SELECT alter_columnar_table_set('test_options_2', compression_level => 13);
|
||||
alter_columnar_table_set
|
||||
---------------------------------------------------------------------
|
||||
|
||||
(1 row)
|
||||
|
||||
INSERT INTO test_options_2 SELECT i, floor(i/2000) FROM generate_series(1, 10000) i;
|
||||
Create or replace function test_jsonb() returns jsonb as
|
||||
|
|
@ -227,7 +213,6 @@ VALUES (3,ARRAY[1], ARRAY[ARRAY[0,0,0]], ARRAY[ARRAY[ARRAY[0,0,0]]], ARRAY['1'],
|
|||
---------------------------------------------------------------------
|
||||
3 | {1} | {{0,0,0}} | {{{0,0,0}}} | {1} | {{0,0,0}} | {{{0,0,0}}} | 1 | {1} | {{0,0,0}} | {{{0,0,0}}} | 11101 | {1} | {{01,01,01}} | {{{011,110,0000}}} | \xb4a8e04c0b | {"\\xb4a8e04c0b"} | {{"\\xb4a8e04c0b","\\xb4a8e04c0b","\\xb4a8e04c0b"}} | {{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}}} | t | {t} | {{t,t,f}} | {{{t,t,f}}} | 192.168.1.0/24 | {192.168.1.1} | {{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}} | {{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}} | 08:00:2b:01:02:03 | {08:00:2b:01:02:03} | {{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}} | {{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}} | 690 | {1.1} | {{0,0.111,0.15}} | {{{0,0,0}}} | {"test_json": "test"} | {"{\"test_json\": \"test\"}"} | {{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}} | {{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}}}
|
||||
4 | {1,2,3} | {{1,2,3},{5,6,7}} | {{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}} | {1,2,3} | {{1,2,3},{5,6,7}} | {{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}} | 0 | {1,0,0} | {{1,1,0},{0,0,1}} | {{{1,1,1}},{{1,0,0}},{{1,1,1}},{{0,0,0}}} | 00010 | {11,10,01} | {{11,010,101},{101,01111,1000001}} | {{{10000,111111,1101010101}},{{1101010,0,1}},{{1,1,11111111}},{{0000000,0,0}}} | \xb4a8e04c0b | {"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"} | {{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"},{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}} | {{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}},{{"\\xb4a8e04c0b","\\x18a232a678","\\x38b2697632"}}} | t | {t,t,f} | {{t,t,f},{t,t,f}} | {{{t,t,f}},{{t,t,f}},{{t,t,f}},{{t,t,f}}} | 0.0.0.0 | {0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24} | {{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}} | {{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}} | 08:00:2b:01:02:03 | {08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03} | {{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}} | {{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}} | 0.99 | {1.1,2.22,3.33} | {{1.55,2.66,3.88},{11.5,10101.6,7111.1}} | {{{1,2,3}},{{5,6,7}},{{1.1,2.1,3}},{{5.0,6.0,7.0}}} | {"test_json": "test"} | {"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"} | {{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"},{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}} | {{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}},{{"{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}","{\"test_json\": \"test\"}"}}}
|
||||
(2 rows)
|
||||
|
||||
-- GROUP BY w/wout the dist key
|
||||
SELECT
|
||||
|
|
@ -240,7 +225,6 @@ GROUP BY
|
|||
---------------------------------------------------------------------
|
||||
2
|
||||
2
|
||||
(2 rows)
|
||||
|
||||
SELECT
|
||||
count(*)
|
||||
|
|
@ -254,7 +238,6 @@ GROUP BY
|
|||
1
|
||||
1
|
||||
1
|
||||
(4 rows)
|
||||
|
||||
-- window function w/wout distribution key
|
||||
SELECT
|
||||
|
|
@ -267,7 +250,6 @@ FROM
|
|||
2
|
||||
2
|
||||
2
|
||||
(4 rows)
|
||||
|
||||
SELECT
|
||||
count(*) OVER (PARTITION BY dist_key, col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col32, col33, col34, col35, col36, col37, col38)
|
||||
|
|
@ -279,7 +261,6 @@ FROM
|
|||
1
|
||||
1
|
||||
1
|
||||
(4 rows)
|
||||
|
||||
-- DISTINCT w/wout distribution key
|
||||
-- there seems to be an issue with SELECT DISTINCT ROW with PG14
|
||||
|
|
@ -293,7 +274,6 @@ ORDER BY 1 DESC;
|
|||
---------------------------------------------------------------------
|
||||
("{1,2,3}","{{1,2,3},{5,6,7}}","{{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}}","{1,2,3}","{{1,2,3},{5,6,7}}","{{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}}",0,"{1,0,0}","{{1,1,0},{0,0,1}}","{{{1,1,1}},{{1,0,0}},{{1,1,1}},{{0,0,0}}}",00010,"{11,10,01}","{{11,010,101},{101,01111,1000001}}","{{{10000,111111,1101010101}},{{1101010,0,1}},{{1,1,11111111}},{{0000000,0,0}}}","\\xb4a8e04c0b","{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}","{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""},{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}","{{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}}",t,"{t,t,f}","{{t,t,f},{t,t,f}}","{{{t,t,f}},{{t,t,f}},{{t,t,f}},{{t,t,f}}}",0.0.0.0,"{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}","{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}","{{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}}",08:00:2b:01:02:03,"{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}","{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}","{{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}}","{1.1,2.22,3.33}","{{1.55,2.66,3.88},{11.5,10101.6,7111.1}}","{{{1,2,3}},{{5,6,7}},{{1.1,2.1,3}},{{5.0,6.0,7.0}}}","{""test_json"": ""test""}","{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}","{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""},{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}","{{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}}")
|
||||
({1},"{{0,0,0}}","{{{0,0,0}}}",{1},"{{0,0,0}}","{{{0,0,0}}}",1,{1},"{{0,0,0}}","{{{0,0,0}}}",11101,{1},"{{01,01,01}}","{{{011,110,0000}}}","\\xb4a8e04c0b","{""\\\\xb4a8e04c0b""}","{{""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b""}}","{{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}}",t,{t},"{{t,t,f}}","{{{t,t,f}}}",192.168.1.0/24,{192.168.1.1},"{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}","{{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}}",08:00:2b:01:02:03,{08:00:2b:01:02:03},"{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}","{{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}}",{1.1},"{{0,0.111,0.15}}","{{{0,0,0}}}","{""test_json"": ""test""}","{""{\\""test_json\\"": \\""test\\""}""}","{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}","{{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}}")
|
||||
(2 rows)
|
||||
|
||||
SELECT DISTINCT(dist_key, col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col32, col33, col34, col35, col36, col37, col38)
|
||||
FROM
|
||||
|
|
@ -305,7 +285,6 @@ ORDER BY 1 DESC;
|
|||
(3,{1},"{{0,0,0}}","{{{0,0,0}}}",{1},"{{0,0,0}}","{{{0,0,0}}}",1,{1},"{{0,0,0}}","{{{0,0,0}}}",11101,{1},"{{01,01,01}}","{{{011,110,0000}}}","\\xb4a8e04c0b","{""\\\\xb4a8e04c0b""}","{{""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b""}}","{{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}}",t,{t},"{{t,t,f}}","{{{t,t,f}}}",192.168.1.0/24,{192.168.1.1},"{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}","{{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}}",08:00:2b:01:02:03,{08:00:2b:01:02:03},"{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}","{{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}}",{1.1},"{{0,0.111,0.15}}","{{{0,0,0}}}","{""test_json"": ""test""}","{""{\\""test_json\\"": \\""test\\""}""}","{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}","{{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}}")
|
||||
(2,"{1,2,3}","{{1,2,3},{5,6,7}}","{{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}}","{1,2,3}","{{1,2,3},{5,6,7}}","{{{1,2,3}},{{5,6,7}},{{1,2,3}},{{5,6,7}}}",0,"{1,0,0}","{{1,1,0},{0,0,1}}","{{{1,1,1}},{{1,0,0}},{{1,1,1}},{{0,0,0}}}",00010,"{11,10,01}","{{11,010,101},{101,01111,1000001}}","{{{10000,111111,1101010101}},{{1101010,0,1}},{{1,1,11111111}},{{0000000,0,0}}}","\\xb4a8e04c0b","{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}","{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""},{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}","{{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}},{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}}",t,"{t,t,f}","{{t,t,f},{t,t,f}}","{{{t,t,f}},{{t,t,f}},{{t,t,f}},{{t,t,f}}}",0.0.0.0,"{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}","{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}","{{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}},{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}}",08:00:2b:01:02:03,"{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}","{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}","{{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}},{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}}","{1.1,2.22,3.33}","{{1.55,2.66,3.88},{11.5,10101.6,7111.1}}","{{{1,2,3}},{{5,6,7}},{{1.1,2.1,3}},{{5.0,6.0,7.0}}}","{""test_json"": ""test""}","{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}","{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""},{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}","{{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}},{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}}")
|
||||
(1,{1},"{{0,0,0}}","{{{0,0,0}}}",{1},"{{0,0,0}}","{{{0,0,0}}}",1,{1},"{{0,0,0}}","{{{0,0,0}}}",11101,{1},"{{01,01,01}}","{{{011,110,0000}}}","\\xb4a8e04c0b","{""\\\\xb4a8e04c0b""}","{{""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b"",""\\\\xb4a8e04c0b""}}","{{{""\\\\xb4a8e04c0b"",""\\\\x18a232a678"",""\\\\x38b2697632""}}}",t,{t},"{{t,t,f}}","{{{t,t,f}}}",192.168.1.0/24,{192.168.1.1},"{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}","{{{0.0.0.0,0.0.0.0,::ffff:255.240.0.1,192.168.1.0/24}}}",08:00:2b:01:02:03,{08:00:2b:01:02:03},"{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}","{{{08:00:2b:01:02:03,08:00:2b:01:02:03,08:00:2b:01:02:03}}}",{1.1},"{{0,0.111,0.15}}","{{{0,0,0}}}","{""test_json"": ""test""}","{""{\\""test_json\\"": \\""test\\""}""}","{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}","{{{""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}"",""{\\""test_json\\"": \\""test\\""}""}}}")
|
||||
(4 rows)
|
||||
|
||||
-- count DISTINCT w/wout dist key
|
||||
SELECT count(DISTINCT(col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col32, col33, col34, col35, col36, col37, col38))
|
||||
|
|
@ -315,7 +294,6 @@ ORDER BY 1 DESC;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
2
|
||||
(1 row)
|
||||
|
||||
SELECT count(DISTINCT(dist_key, col1, col2, col3, col4, col5, col6, col70, col7, col8, col9, col10, col11, col12, col13, col14, col15, col16, col17, col18, col19, col20, col21, col22, col23, col24, col25, col26, col27, col28, col29, col32, col33, col34, col35, col36, col37, col38))
|
||||
FROM
|
||||
|
|
@ -324,27 +302,24 @@ ORDER BY 1 DESC;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
4
|
||||
(1 row)
|
||||
|
||||
-- a query that might use index, but doesn't use as chunk group filtering is cheaper
|
||||
SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 = ARRAY[1];
|
||||
count
|
||||
---------------------------------------------------------------------
|
||||
1
|
||||
(1 row)
|
||||
|
||||
-- make sure that we test index scan
|
||||
set columnar.enable_custom_scan to 'off';
|
||||
set enable_seqscan to off;
|
||||
set seq_page_cost TO 10000000;
|
||||
EXPLAIN (costs off, timing off, summary off, analyze on, BUFFERS OFF)
|
||||
EXPLAIN (costs off, timing off, summary off, analyze off, BUFFERS OFF)
|
||||
SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 = ARRAY[1];
|
||||
QUERY PLAN
|
||||
---------------------------------------------------------------------
|
||||
Aggregate (actual rows=1 loops=1)
|
||||
-> Index Scan using non_unique_index_on_columnar on less_common_data_types_table (actual rows=1 loops=1)
|
||||
Aggregate
|
||||
-> Index Scan using non_unique_index_on_columnar on less_common_data_types_table
|
||||
Index Cond: ((dist_key = 1) AND (col1 = '{1}'::integer[]))
|
||||
(3 rows)
|
||||
|
||||
-- make sure that we re-enable columnar scan
|
||||
RESET columnar.enable_custom_scan;
|
||||
|
|
@ -394,7 +369,6 @@ select count(DISTINCT value) from text_data;
|
|||
count
|
||||
---------------------------------------------------------------------
|
||||
11
|
||||
(1 row)
|
||||
|
||||
-- test using a columnar partition
|
||||
CREATE TABLE foo (d DATE NOT NULL) PARTITION BY RANGE (d);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
SET search_path TO upgrade_columnar, public;
|
||||
\pset footer off
|
||||
|
||||
-- test we retained data
|
||||
SELECT * FROM test_retains_data ORDER BY a;
|
||||
|
|
@ -65,7 +66,7 @@ set columnar.enable_custom_scan to 'off';
|
|||
set enable_seqscan to off;
|
||||
set seq_page_cost TO 10000000;
|
||||
|
||||
EXPLAIN (costs off, timing off, summary off, analyze on, BUFFERS OFF)
|
||||
EXPLAIN (costs off, timing off, summary off, analyze off, BUFFERS OFF)
|
||||
SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 = ARRAY[1];
|
||||
|
||||
-- make sure that we re-enable columnar scan
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
SET client_min_messages TO WARNING;
|
||||
CREATE EXTENSION IF NOT EXISTS citus_columnar;
|
||||
RESET client_min_messages;
|
||||
\pset footer off
|
||||
|
||||
-- Test if relying on topological sort of the objects, not their names, works
|
||||
-- fine when re-creating objects during pg_upgrade.
|
||||
|
|
@ -253,7 +254,7 @@ set columnar.enable_custom_scan to 'off';
|
|||
set enable_seqscan to off;
|
||||
set seq_page_cost TO 10000000;
|
||||
|
||||
EXPLAIN (costs off, timing off, summary off, analyze on, BUFFERS OFF)
|
||||
EXPLAIN (costs off, timing off, summary off, analyze off, BUFFERS OFF)
|
||||
SELECT count(*) FROM less_common_data_types_table WHERE dist_key = 1 AND col1 = ARRAY[1];
|
||||
|
||||
-- make sure that we re-enable columnar scan
|
||||
|
|
|
|||
Loading…
Reference in New Issue