Merge pull request #1810 from citusdata/regression_speedup

Reduces default shard count in regression tests from 32 to 4
pull/1817/head
Mehmet Furkan ŞAHİN 2017-11-20 13:05:12 +03:00 committed by GitHub
commit 785d94e828
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 305 additions and 284 deletions

View File

@ -30,16 +30,16 @@ INSERT INTO products VALUES(1, 'product_1', 1);
-- Should error out, since we are trying to add a new row having a value on p_key column -- Should error out, since we are trying to add a new row having a value on p_key column
-- conflicting with the existing row. -- conflicting with the existing row.
INSERT INTO products VALUES(1, 'product_1', 1); INSERT INTO products VALUES(1, 'product_1', 1);
ERROR: duplicate key value violates unique constraint "p_key_1450001" ERROR: duplicate key value violates unique constraint "p_key_1450000"
DETAIL: Key (product_no)=(1) already exists. DETAIL: Key (product_no)=(1) already exists.
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
ALTER TABLE products DROP CONSTRAINT p_key; ALTER TABLE products DROP CONSTRAINT p_key;
INSERT INTO products VALUES(1, 'product_1', 1); INSERT INTO products VALUES(1, 'product_1', 1);
-- Can not create constraint since it conflicts with the existing data -- Can not create constraint since it conflicts with the existing data
ALTER TABLE products ADD CONSTRAINT p_key PRIMARY KEY(product_no); ALTER TABLE products ADD CONSTRAINT p_key PRIMARY KEY(product_no);
ERROR: could not create unique index "p_key_1450001" ERROR: could not create unique index "p_key_1450000"
DETAIL: Key (product_no)=(1) is duplicated. DETAIL: Key (product_no)=(1) is duplicated.
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57638
DROP TABLE products; DROP TABLE products;
-- Check "PRIMARY KEY CONSTRAINT" with reference table -- Check "PRIMARY KEY CONSTRAINT" with reference table
CREATE TABLE products_ref ( CREATE TABLE products_ref (
@ -61,7 +61,7 @@ INSERT INTO products_ref VALUES(1, 'product_1', 1);
-- Should error out, since we are trying to add new row having a value on p_key column -- Should error out, since we are trying to add new row having a value on p_key column
-- conflicting with the existing row. -- conflicting with the existing row.
INSERT INTO products_ref VALUES(1, 'product_1', 1); INSERT INTO products_ref VALUES(1, 'product_1', 1);
ERROR: duplicate key value violates unique constraint "p_key_1450032" ERROR: duplicate key value violates unique constraint "p_key_1450004"
DETAIL: Key (product_no)=(1) already exists. DETAIL: Key (product_no)=(1) already exists.
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57637
DROP TABLE products_ref; DROP TABLE products_ref;
@ -92,7 +92,7 @@ DETAIL: UNIQUE constraints, EXCLUDE constraints, and PRIMARY KEYs on append-par
HINT: Consider using hash partitioning. HINT: Consider using hash partitioning.
--- Error out since first and third rows have the same product_no --- Error out since first and third rows have the same product_no
\COPY products_append FROM STDIN DELIMITER AS ','; \COPY products_append FROM STDIN DELIMITER AS ',';
ERROR: duplicate key value violates unique constraint "p_key_1450033" ERROR: duplicate key value violates unique constraint "p_key_1450005"
DETAIL: Key (product_no)=(1) already exists. DETAIL: Key (product_no)=(1) already exists.
DROP TABLE products_append; DROP TABLE products_append;
-- Check "UNIQUE CONSTRAINT" -- Check "UNIQUE CONSTRAINT"
@ -113,25 +113,25 @@ ALTER TABLE unique_test_table ADD CONSTRAINT unn_id UNIQUE(id);
-- Error out, since table can not have two rows with same id. -- Error out, since table can not have two rows with same id.
INSERT INTO unique_test_table VALUES(1, 'Ahmet'); INSERT INTO unique_test_table VALUES(1, 'Ahmet');
INSERT INTO unique_test_table VALUES(1, 'Mehmet'); INSERT INTO unique_test_table VALUES(1, 'Mehmet');
ERROR: duplicate key value violates unique constraint "unn_id_1450035" ERROR: duplicate key value violates unique constraint "unn_id_1450006"
DETAIL: Key (id)=(1) already exists. DETAIL: Key (id)=(1) already exists.
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
ALTER TABLE unique_test_table DROP CONSTRAINT unn_id; ALTER TABLE unique_test_table DROP CONSTRAINT unn_id;
-- Insert row which will conflict with the next unique constraint command -- Insert row which will conflict with the next unique constraint command
INSERT INTO unique_test_table VALUES(1, 'Mehmet'); INSERT INTO unique_test_table VALUES(1, 'Mehmet');
-- Can not create constraint since it conflicts with the existing data -- Can not create constraint since it conflicts with the existing data
ALTER TABLE unique_test_table ADD CONSTRAINT unn_id UNIQUE(id); ALTER TABLE unique_test_table ADD CONSTRAINT unn_id UNIQUE(id);
ERROR: could not create unique index "unn_id_1450035" ERROR: could not create unique index "unn_id_1450006"
DETAIL: Key (id)=(1) is duplicated. DETAIL: Key (id)=(1) is duplicated.
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57638
-- Can create unique constraint over multiple columns which must include -- Can create unique constraint over multiple columns which must include
-- distribution column -- distribution column
ALTER TABLE unique_test_table ADD CONSTRAINT unn_id_name UNIQUE(id, name); ALTER TABLE unique_test_table ADD CONSTRAINT unn_id_name UNIQUE(id, name);
-- Error out, since tables can not have two rows with same id and name. -- Error out, since tables can not have two rows with same id and name.
INSERT INTO unique_test_table VALUES(1, 'Mehmet'); INSERT INTO unique_test_table VALUES(1, 'Mehmet');
ERROR: duplicate key value violates unique constraint "unn_id_name_1450035" ERROR: duplicate key value violates unique constraint "unn_id_name_1450006"
DETAIL: Key (id, name)=(1, Mehmet) already exists. DETAIL: Key (id, name)=(1, Mehmet) already exists.
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
DROP TABLE unique_test_table; DROP TABLE unique_test_table;
-- Check "UNIQUE CONSTRAINT" with reference table -- Check "UNIQUE CONSTRAINT" with reference table
CREATE TABLE unique_test_table_ref(id int, name varchar(20)); CREATE TABLE unique_test_table_ref(id int, name varchar(20));
@ -147,7 +147,7 @@ ALTER TABLE unique_test_table_ref ADD CONSTRAINT unn_id UNIQUE(id);
-- Error out. Since the table can not have two rows with the same id. -- Error out. Since the table can not have two rows with the same id.
INSERT INTO unique_test_table_ref VALUES(1, 'Ahmet'); INSERT INTO unique_test_table_ref VALUES(1, 'Ahmet');
INSERT INTO unique_test_table_ref VALUES(1, 'Mehmet'); INSERT INTO unique_test_table_ref VALUES(1, 'Mehmet');
ERROR: duplicate key value violates unique constraint "unn_id_1450066" ERROR: duplicate key value violates unique constraint "unn_id_1450010"
DETAIL: Key (id)=(1) already exists. DETAIL: Key (id)=(1) already exists.
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57637
-- We can add unique constraint with multiple columns -- We can add unique constraint with multiple columns
@ -179,7 +179,7 @@ DETAIL: UNIQUE constraints, EXCLUDE constraints, and PRIMARY KEYs on append-par
HINT: Consider using hash partitioning. HINT: Consider using hash partitioning.
-- Error out. Table can not have two rows with the same id. -- Error out. Table can not have two rows with the same id.
\COPY unique_test_table_append FROM STDIN DELIMITER AS ','; \COPY unique_test_table_append FROM STDIN DELIMITER AS ',';
ERROR: duplicate key value violates unique constraint "unn_id_1450067" ERROR: duplicate key value violates unique constraint "unn_id_1450011"
DETAIL: Key (id)=(1) already exists. DETAIL: Key (id)=(1) already exists.
DROP TABLE unique_test_table_append; DROP TABLE unique_test_table_append;
-- Check "CHECK CONSTRAINT" -- Check "CHECK CONSTRAINT"
@ -201,14 +201,14 @@ ALTER TABLE products ADD CONSTRAINT p_multi_check CHECK(price > discounted_price
-- First and third queries will error out, because of conflicts with p_check and -- First and third queries will error out, because of conflicts with p_check and
-- p_multi_check, respectively. -- p_multi_check, respectively.
INSERT INTO products VALUES(1, 'product_1', -1, -2); INSERT INTO products VALUES(1, 'product_1', -1, -2);
ERROR: new row for relation "products_1450069" violates check constraint "p_check_1450069" ERROR: new row for relation "products_1450012" violates check constraint "p_check_1450012"
DETAIL: Failing row contains (1, product_1, -1, -2). DETAIL: Failing row contains (1, product_1, -1, -2).
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
INSERT INTO products VALUES(1, 'product_1', 5, 3); INSERT INTO products VALUES(1, 'product_1', 5, 3);
INSERT INTO products VALUES(1, 'product_1', 2, 3); INSERT INTO products VALUES(1, 'product_1', 2, 3);
ERROR: new row for relation "products_1450069" violates check constraint "p_multi_check_1450069" ERROR: new row for relation "products_1450012" violates check constraint "p_multi_check_1450012"
DETAIL: Failing row contains (1, product_1, 2, 3). DETAIL: Failing row contains (1, product_1, 2, 3).
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
DROP TABLE products; DROP TABLE products;
-- Check "CHECK CONSTRAINT" with reference table -- Check "CHECK CONSTRAINT" with reference table
CREATE TABLE products_ref ( CREATE TABLE products_ref (
@ -229,12 +229,12 @@ ALTER TABLE products_ref ADD CONSTRAINT p_multi_check CHECK(price > discounted_p
-- First and third queries will error out, because of conflicts with p_check and -- First and third queries will error out, because of conflicts with p_check and
-- p_multi_check, respectively. -- p_multi_check, respectively.
INSERT INTO products_ref VALUES(1, 'product_1', -1, -2); INSERT INTO products_ref VALUES(1, 'product_1', -1, -2);
ERROR: new row for relation "products_ref_1450100" violates check constraint "p_check_1450100" ERROR: new row for relation "products_ref_1450016" violates check constraint "p_check_1450016"
DETAIL: Failing row contains (1, product_1, -1, -2). DETAIL: Failing row contains (1, product_1, -1, -2).
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57637
INSERT INTO products_ref VALUES(1, 'product_1', 5, 3); INSERT INTO products_ref VALUES(1, 'product_1', 5, 3);
INSERT INTO products_ref VALUES(1, 'product_1', 2, 3); INSERT INTO products_ref VALUES(1, 'product_1', 2, 3);
ERROR: new row for relation "products_ref_1450100" violates check constraint "p_multi_check_1450100" ERROR: new row for relation "products_ref_1450016" violates check constraint "p_multi_check_1450016"
DETAIL: Failing row contains (1, product_1, 2, 3). DETAIL: Failing row contains (1, product_1, 2, 3).
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57637
DROP TABLE products_ref; DROP TABLE products_ref;
@ -256,7 +256,7 @@ ALTER TABLE products_append ADD CONSTRAINT p_check CHECK(price > 0);
ALTER TABLE products_append ADD CONSTRAINT p_multi_check CHECK(price > discounted_price); ALTER TABLE products_append ADD CONSTRAINT p_multi_check CHECK(price > discounted_price);
-- Error out,since the third row conflicting with the p_multi_check -- Error out,since the third row conflicting with the p_multi_check
\COPY products_append FROM STDIN DELIMITER AS ','; \COPY products_append FROM STDIN DELIMITER AS ',';
ERROR: new row for relation "products_append_1450101" violates check constraint "p_multi_check" ERROR: new row for relation "products_append_1450017" violates check constraint "p_multi_check"
DETAIL: Failing row contains (1, Product_3, 8, 10). DETAIL: Failing row contains (1, Product_3, 8, 10).
DROP TABLE products_append; DROP TABLE products_append;
-- Check "EXCLUSION CONSTRAINT" -- Check "EXCLUSION CONSTRAINT"
@ -284,9 +284,9 @@ INSERT INTO products VALUES(1,'product_1', 5);
INSERT INTO products VALUES(1,'product_2', 10); INSERT INTO products VALUES(1,'product_2', 10);
INSERT INTO products VALUES(2,'product_2', 5); INSERT INTO products VALUES(2,'product_2', 5);
INSERT INTO products VALUES(2,'product_2', 5); INSERT INTO products VALUES(2,'product_2', 5);
ERROR: conflicting key value violates exclusion constraint "exc_pno_name_1450126" ERROR: conflicting key value violates exclusion constraint "exc_pno_name_1450021"
DETAIL: Key (product_no, name)=(2, product_2) conflicts with existing key (product_no, name)=(2, product_2). DETAIL: Key (product_no, name)=(2, product_2) conflicts with existing key (product_no, name)=(2, product_2).
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57638
DROP TABLE products; DROP TABLE products;
-- Check "EXCLUSION CONSTRAINT" with reference table -- Check "EXCLUSION CONSTRAINT" with reference table
CREATE TABLE products_ref ( CREATE TABLE products_ref (
@ -308,7 +308,7 @@ ALTER TABLE products_ref ADD CONSTRAINT exc_pno_name EXCLUDE USING btree (produc
INSERT INTO products_ref VALUES(1,'product_1', 5); INSERT INTO products_ref VALUES(1,'product_1', 5);
INSERT INTO products_ref VALUES(1,'product_2', 10); INSERT INTO products_ref VALUES(1,'product_2', 10);
INSERT INTO products_ref VALUES(2,'product_2', 5); INSERT INTO products_ref VALUES(2,'product_2', 5);
ERROR: conflicting key value violates exclusion constraint "exc_name_1450134" ERROR: conflicting key value violates exclusion constraint "exc_name_1450022"
DETAIL: Key (name)=(product_2) conflicts with existing key (name)=(product_2). DETAIL: Key (name)=(product_2) conflicts with existing key (name)=(product_2).
CONTEXT: while executing command on localhost:57637 CONTEXT: while executing command on localhost:57637
DROP TABLE products_ref; DROP TABLE products_ref;
@ -339,7 +339,7 @@ DETAIL: UNIQUE constraints, EXCLUDE constraints, and PRIMARY KEYs on append-par
HINT: Consider using hash partitioning. HINT: Consider using hash partitioning.
-- Error out since first and third can not pass the exclusion check. -- Error out since first and third can not pass the exclusion check.
\COPY products_append FROM STDIN DELIMITER AS ','; \COPY products_append FROM STDIN DELIMITER AS ',';
ERROR: conflicting key value violates exclusion constraint "exc_pno_name_1450135" ERROR: conflicting key value violates exclusion constraint "exc_pno_name_1450023"
DETAIL: Key (product_no, name)=(1, Product_1) conflicts with existing key (product_no, name)=(1, Product_1). DETAIL: Key (product_no, name)=(1, Product_1) conflicts with existing key (product_no, name)=(1, Product_1).
DROP TABLE products_append; DROP TABLE products_append;
-- Check "NOT NULL" -- Check "NOT NULL"
@ -359,7 +359,7 @@ ALTER TABLE products ALTER COLUMN name SET NOT NULL;
INSERT INTO products VALUES(1,NULL,5); INSERT INTO products VALUES(1,NULL,5);
ERROR: null value in column "name" violates not-null constraint ERROR: null value in column "name" violates not-null constraint
DETAIL: Failing row contains (1, null, 5). DETAIL: Failing row contains (1, null, 5).
CONTEXT: while executing command on localhost:57638 CONTEXT: while executing command on localhost:57637
INSERT INTO products VALUES(NULL,'product_1', 5); INSERT INTO products VALUES(NULL,'product_1', 5);
ERROR: cannot perform an INSERT with NULL in the partition column ERROR: cannot perform an INSERT with NULL in the partition column
DROP TABLE products; DROP TABLE products;
@ -459,7 +459,7 @@ SELECT "Constraint", "Definition" FROM table_checks WHERE relid='products'::regc
(0 rows) (0 rows)
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450202'::regclass; SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450034'::regclass;
Constraint | Definition Constraint | Definition
------------+------------ ------------+------------
(0 rows) (0 rows)
@ -481,7 +481,7 @@ SELECT "Constraint", "Definition" FROM table_checks WHERE relid='products'::regc
(0 rows) (0 rows)
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450202'::regclass; SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450034'::regclass;
Constraint | Definition Constraint | Definition
------------+------------ ------------+------------
(0 rows) (0 rows)
@ -516,8 +516,8 @@ ORDER BY
1,2,3,4; 1,2,3,4;
nodename | nodeport | success | result nodename | nodeport | success | result
-----------+----------+---------+---------------------- -----------+----------+---------+----------------------
localhost | 57637 | t | alter_pk_idx_1450234 localhost | 57637 | t | alter_pk_idx_1450038
localhost | 57638 | t | alter_pk_idx_1450234 localhost | 57638 | t | alter_pk_idx_1450038
(2 rows) (2 rows)
CREATE SCHEMA sc2; CREATE SCHEMA sc2;
@ -549,8 +549,8 @@ ORDER BY
1,2,3,4; 1,2,3,4;
nodename | nodeport | success | result nodename | nodeport | success | result
-----------+----------+---------+---------------------- -----------+----------+---------+----------------------
localhost | 57637 | t | alter_pk_idx_1450236 localhost | 57637 | t | alter_pk_idx_1450040
localhost | 57638 | t | alter_pk_idx_1450236 localhost | 57638 | t | alter_pk_idx_1450040
(2 rows) (2 rows)
-- We are running almost the same test with a slight change on the constraint name because if the constraint has a different name than the index, Postgres renames the index. -- We are running almost the same test with a slight change on the constraint name because if the constraint has a different name than the index, Postgres renames the index.
@ -584,8 +584,8 @@ ORDER BY
1,2,3,4; 1,2,3,4;
nodename | nodeport | success | result nodename | nodeport | success | result
-----------+----------+---------+---------------------- -----------+----------+---------+----------------------
localhost | 57637 | t | a_constraint_1450238 localhost | 57637 | t | a_constraint_1450042
localhost | 57638 | t | a_constraint_1450238 localhost | 57638 | t | a_constraint_1450042
(2 rows) (2 rows)
ALTER TABLE alter_add_prim_key DROP CONSTRAINT a_constraint; ALTER TABLE alter_add_prim_key DROP CONSTRAINT a_constraint;

View File

@ -413,7 +413,7 @@ WHERE
AND pg_dist_shard_placement.nodeport = :worker_2_port; AND pg_dist_shard_placement.nodeport = :worker_2_port;
count count
------- -------
32 4
(1 row) (1 row)

View File

@ -388,7 +388,7 @@ SELECT create_distributed_table('table2_groupC', 'id');
(1 row) (1 row)
-- change shard count -- change shard count
SET citus.shard_count = 4; SET citus.shard_count = 8;
CREATE TABLE table1_groupD ( id int ); CREATE TABLE table1_groupD ( id int );
SELECT create_distributed_table('table1_groupD', 'id'); SELECT create_distributed_table('table1_groupD', 'id');
create_distributed_table create_distributed_table
@ -433,11 +433,11 @@ SELECT * FROM pg_dist_colocation
ORDER BY colocationid; ORDER BY colocationid;
colocationid | shardcount | replicationfactor | distributioncolumntype colocationid | shardcount | replicationfactor | distributioncolumntype
--------------+------------+-------------------+------------------------ --------------+------------+-------------------+------------------------
3 | 32 | 2 | 23 3 | 4 | 2 | 23
4 | 2 | 2 | 23 4 | 2 | 2 | 23
5 | 2 | 1 | 23 5 | 2 | 1 | 23
6 | 2 | 2 | 25 6 | 2 | 2 | 25
7 | 4 | 2 | 23 7 | 8 | 2 | 23
(5 rows) (5 rows)
SELECT logicalrelid, colocationid FROM pg_dist_partition SELECT logicalrelid, colocationid FROM pg_dist_partition
@ -557,11 +557,11 @@ SELECT * FROM pg_dist_colocation
ORDER BY colocationid; ORDER BY colocationid;
colocationid | shardcount | replicationfactor | distributioncolumntype colocationid | shardcount | replicationfactor | distributioncolumntype
--------------+------------+-------------------+------------------------ --------------+------------+-------------------+------------------------
3 | 32 | 2 | 23 3 | 4 | 2 | 23
4 | 2 | 2 | 23 4 | 2 | 2 | 23
5 | 2 | 1 | 23 5 | 2 | 1 | 23
6 | 2 | 2 | 25 6 | 2 | 2 | 25
7 | 4 | 2 | 23 7 | 8 | 2 | 23
11 | 3 | 2 | 23 11 | 3 | 2 | 23
(6 rows) (6 rows)
@ -617,21 +617,21 @@ ERROR: cannot colocate tables table1_groupe and table_bigint
DETAIL: Distribution column types don't match for table1_groupe and table_bigint. DETAIL: Distribution column types don't match for table1_groupe and table_bigint.
-- check worker table schemas -- check worker table schemas
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='public.table3_groupE_1300050'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='public.table3_groupE_1300062'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------------+---------+----------- --------------+---------+-----------
dummy_column | text | dummy_column | text |
id | integer | id | integer |
(2 rows) (2 rows)
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='schema_collocation.table4_groupE_1300052'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='schema_collocation.table4_groupE_1300064'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------+---------+----------- --------+---------+-----------
id | integer | id | integer |
(1 row) (1 row)
\c - - - :master_port \c - - - :master_port
SET citus.next_shard_id TO 1300068; SET citus.next_shard_id TO 1300080;
CREATE TABLE table1_groupF ( id int ); CREATE TABLE table1_groupF ( id int );
SELECT create_reference_table('table1_groupF'); SELECT create_reference_table('table1_groupF');
create_reference_table create_reference_table
@ -652,11 +652,11 @@ SELECT * FROM pg_dist_colocation
ORDER BY colocationid; ORDER BY colocationid;
colocationid | shardcount | replicationfactor | distributioncolumntype colocationid | shardcount | replicationfactor | distributioncolumntype
--------------+------------+-------------------+------------------------ --------------+------------+-------------------+------------------------
3 | 32 | 2 | 23 3 | 4 | 2 | 23
4 | 2 | 2 | 23 4 | 2 | 2 | 23
5 | 2 | 1 | 23 5 | 2 | 1 | 23
6 | 2 | 2 | 25 6 | 2 | 2 | 25
7 | 4 | 2 | 23 7 | 8 | 2 | 23
11 | 3 | 2 | 23 11 | 3 | 2 | 23
(6 rows) (6 rows)
@ -731,79 +731,103 @@ ORDER BY
table2_groupc | 1300032 | t | 57637 | -2147483648 | -1 table2_groupc | 1300032 | t | 57637 | -2147483648 | -1
table2_groupc | 1300033 | t | 57637 | 0 | 2147483647 table2_groupc | 1300033 | t | 57637 | 0 | 2147483647
table2_groupc | 1300033 | t | 57638 | 0 | 2147483647 table2_groupc | 1300033 | t | 57638 | 0 | 2147483647
table1_groupd | 1300034 | t | 57637 | -2147483648 | -1073741825 table1_groupd | 1300034 | t | 57637 | -2147483648 | -1610612737
table1_groupd | 1300034 | t | 57638 | -2147483648 | -1073741825 table1_groupd | 1300034 | t | 57638 | -2147483648 | -1610612737
table1_groupd | 1300035 | t | 57638 | -1073741824 | -1 table1_groupd | 1300035 | t | 57638 | -1610612736 | -1073741825
table1_groupd | 1300035 | t | 57637 | -1073741824 | -1 table1_groupd | 1300035 | t | 57637 | -1610612736 | -1073741825
table1_groupd | 1300036 | t | 57637 | 0 | 1073741823 table1_groupd | 1300036 | t | 57637 | -1073741824 | -536870913
table1_groupd | 1300036 | t | 57638 | 0 | 1073741823 table1_groupd | 1300036 | t | 57638 | -1073741824 | -536870913
table1_groupd | 1300037 | t | 57638 | 1073741824 | 2147483647 table1_groupd | 1300037 | t | 57638 | -536870912 | -1
table1_groupd | 1300037 | t | 57637 | 1073741824 | 2147483647 table1_groupd | 1300037 | t | 57637 | -536870912 | -1
table2_groupd | 1300038 | t | 57638 | -2147483648 | -1073741825 table1_groupd | 1300038 | t | 57637 | 0 | 536870911
table2_groupd | 1300038 | t | 57637 | -2147483648 | -1073741825 table1_groupd | 1300038 | t | 57638 | 0 | 536870911
table2_groupd | 1300039 | t | 57637 | -1073741824 | -1 table1_groupd | 1300039 | t | 57638 | 536870912 | 1073741823
table2_groupd | 1300039 | t | 57638 | -1073741824 | -1 table1_groupd | 1300039 | t | 57637 | 536870912 | 1073741823
table2_groupd | 1300040 | t | 57638 | 0 | 1073741823 table1_groupd | 1300040 | t | 57637 | 1073741824 | 1610612735
table2_groupd | 1300040 | t | 57637 | 0 | 1073741823 table1_groupd | 1300040 | t | 57638 | 1073741824 | 1610612735
table2_groupd | 1300041 | t | 57637 | 1073741824 | 2147483647 table1_groupd | 1300041 | t | 57638 | 1610612736 | 2147483647
table2_groupd | 1300041 | t | 57638 | 1073741824 | 2147483647 table1_groupd | 1300041 | t | 57637 | 1610612736 | 2147483647
table3_groupd | 1300042 | f | 57637 | -2147483648 | -1073741825 table2_groupd | 1300042 | t | 57638 | -2147483648 | -1610612737
table3_groupd | 1300042 | f | 57638 | -2147483648 | -1073741825 table2_groupd | 1300042 | t | 57637 | -2147483648 | -1610612737
table3_groupd | 1300043 | f | 57638 | -1073741824 | -1 table2_groupd | 1300043 | t | 57637 | -1610612736 | -1073741825
table3_groupd | 1300043 | f | 57637 | -1073741824 | -1 table2_groupd | 1300043 | t | 57638 | -1610612736 | -1073741825
table3_groupd | 1300044 | f | 57637 | 0 | 1073741823 table2_groupd | 1300044 | t | 57638 | -1073741824 | -536870913
table3_groupd | 1300044 | f | 57638 | 0 | 1073741823 table2_groupd | 1300044 | t | 57637 | -1073741824 | -536870913
table3_groupd | 1300045 | f | 57638 | 1073741824 | 2147483647 table2_groupd | 1300045 | t | 57637 | -536870912 | -1
table3_groupd | 1300045 | f | 57637 | 1073741824 | 2147483647 table2_groupd | 1300045 | t | 57638 | -536870912 | -1
table1_groupe | 1300046 | t | 57637 | -2147483648 | -1 table2_groupd | 1300046 | t | 57638 | 0 | 536870911
table1_groupe | 1300046 | t | 57638 | -2147483648 | -1 table2_groupd | 1300046 | t | 57637 | 0 | 536870911
table1_groupe | 1300047 | t | 57638 | 0 | 2147483647 table2_groupd | 1300047 | t | 57637 | 536870912 | 1073741823
table1_groupe | 1300047 | t | 57637 | 0 | 2147483647 table2_groupd | 1300047 | t | 57638 | 536870912 | 1073741823
table2_groupe | 1300048 | t | 57638 | -2147483648 | -1 table2_groupd | 1300048 | t | 57638 | 1073741824 | 1610612735
table2_groupe | 1300048 | t | 57637 | -2147483648 | -1 table2_groupd | 1300048 | t | 57637 | 1073741824 | 1610612735
table2_groupe | 1300049 | t | 57637 | 0 | 2147483647 table2_groupd | 1300049 | t | 57637 | 1610612736 | 2147483647
table2_groupe | 1300049 | t | 57638 | 0 | 2147483647 table2_groupd | 1300049 | t | 57638 | 1610612736 | 2147483647
table3_groupe | 1300050 | t | 57637 | -2147483648 | -1 table3_groupd | 1300050 | f | 57637 | -2147483648 | -1610612737
table3_groupe | 1300050 | t | 57638 | -2147483648 | -1 table3_groupd | 1300050 | f | 57638 | -2147483648 | -1610612737
table3_groupe | 1300051 | t | 57638 | 0 | 2147483647 table3_groupd | 1300051 | f | 57638 | -1610612736 | -1073741825
table3_groupe | 1300051 | t | 57637 | 0 | 2147483647 table3_groupd | 1300051 | f | 57637 | -1610612736 | -1073741825
schema_collocation.table4_groupe | 1300052 | t | 57638 | -2147483648 | -1 table3_groupd | 1300052 | f | 57637 | -1073741824 | -536870913
schema_collocation.table4_groupe | 1300052 | t | 57637 | -2147483648 | -1 table3_groupd | 1300052 | f | 57638 | -1073741824 | -536870913
schema_collocation.table4_groupe | 1300053 | t | 57637 | 0 | 2147483647 table3_groupd | 1300053 | f | 57638 | -536870912 | -1
schema_collocation.table4_groupe | 1300053 | t | 57638 | 0 | 2147483647 table3_groupd | 1300053 | f | 57637 | -536870912 | -1
table1_group_none_1 | 1300054 | t | 57637 | -2147483648 | -1 table3_groupd | 1300054 | f | 57637 | 0 | 536870911
table1_group_none_1 | 1300054 | t | 57638 | -2147483648 | -1 table3_groupd | 1300054 | f | 57638 | 0 | 536870911
table1_group_none_1 | 1300055 | t | 57638 | 0 | 2147483647 table3_groupd | 1300055 | f | 57638 | 536870912 | 1073741823
table1_group_none_1 | 1300055 | t | 57637 | 0 | 2147483647 table3_groupd | 1300055 | f | 57637 | 536870912 | 1073741823
table2_group_none_1 | 1300056 | t | 57638 | -2147483648 | -1 table3_groupd | 1300056 | f | 57637 | 1073741824 | 1610612735
table2_group_none_1 | 1300056 | t | 57637 | -2147483648 | -1 table3_groupd | 1300056 | f | 57638 | 1073741824 | 1610612735
table2_group_none_1 | 1300057 | t | 57637 | 0 | 2147483647 table3_groupd | 1300057 | f | 57638 | 1610612736 | 2147483647
table2_group_none_1 | 1300057 | t | 57638 | 0 | 2147483647 table3_groupd | 1300057 | f | 57637 | 1610612736 | 2147483647
table1_group_none_2 | 1300058 | t | 57637 | -2147483648 | -1 table1_groupe | 1300058 | t | 57637 | -2147483648 | -1
table1_group_none_2 | 1300058 | t | 57638 | -2147483648 | -1 table1_groupe | 1300058 | t | 57638 | -2147483648 | -1
table1_group_none_2 | 1300059 | t | 57638 | 0 | 2147483647 table1_groupe | 1300059 | t | 57638 | 0 | 2147483647
table1_group_none_2 | 1300059 | t | 57637 | 0 | 2147483647 table1_groupe | 1300059 | t | 57637 | 0 | 2147483647
table4_groupe | 1300060 | t | 57637 | -2147483648 | -1 table2_groupe | 1300060 | t | 57638 | -2147483648 | -1
table4_groupe | 1300060 | t | 57638 | -2147483648 | -1 table2_groupe | 1300060 | t | 57637 | -2147483648 | -1
table4_groupe | 1300061 | t | 57638 | 0 | 2147483647 table2_groupe | 1300061 | t | 57637 | 0 | 2147483647
table4_groupe | 1300061 | t | 57637 | 0 | 2147483647 table2_groupe | 1300061 | t | 57638 | 0 | 2147483647
table1_group_none_3 | 1300062 | t | 57637 | -2147483648 | -715827884 table3_groupe | 1300062 | t | 57637 | -2147483648 | -1
table1_group_none_3 | 1300062 | t | 57638 | -2147483648 | -715827884 table3_groupe | 1300062 | t | 57638 | -2147483648 | -1
table1_group_none_3 | 1300063 | t | 57638 | -715827883 | 715827881 table3_groupe | 1300063 | t | 57638 | 0 | 2147483647
table1_group_none_3 | 1300063 | t | 57637 | -715827883 | 715827881 table3_groupe | 1300063 | t | 57637 | 0 | 2147483647
table1_group_none_3 | 1300064 | t | 57637 | 715827882 | 2147483647 schema_collocation.table4_groupe | 1300064 | t | 57638 | -2147483648 | -1
table1_group_none_3 | 1300064 | t | 57638 | 715827882 | 2147483647 schema_collocation.table4_groupe | 1300064 | t | 57637 | -2147483648 | -1
table1_group_default | 1300065 | t | 57637 | -2147483648 | -715827884 schema_collocation.table4_groupe | 1300065 | t | 57637 | 0 | 2147483647
table1_group_default | 1300065 | t | 57638 | -2147483648 | -715827884 schema_collocation.table4_groupe | 1300065 | t | 57638 | 0 | 2147483647
table1_group_default | 1300066 | t | 57638 | -715827883 | 715827881 table1_group_none_1 | 1300066 | t | 57637 | -2147483648 | -1
table1_group_default | 1300066 | t | 57637 | -715827883 | 715827881 table1_group_none_1 | 1300066 | t | 57638 | -2147483648 | -1
table1_group_default | 1300067 | t | 57637 | 715827882 | 2147483647 table1_group_none_1 | 1300067 | t | 57638 | 0 | 2147483647
table1_group_default | 1300067 | t | 57638 | 715827882 | 2147483647 table1_group_none_1 | 1300067 | t | 57637 | 0 | 2147483647
table1_groupf | 1300068 | t | 57637 | | table2_group_none_1 | 1300068 | t | 57638 | -2147483648 | -1
table1_groupf | 1300068 | t | 57638 | | table2_group_none_1 | 1300068 | t | 57637 | -2147483648 | -1
table2_groupf | 1300069 | t | 57637 | | table2_group_none_1 | 1300069 | t | 57637 | 0 | 2147483647
table2_groupf | 1300069 | t | 57638 | | table2_group_none_1 | 1300069 | t | 57638 | 0 | 2147483647
(84 rows) table1_group_none_2 | 1300070 | t | 57637 | -2147483648 | -1
table1_group_none_2 | 1300070 | t | 57638 | -2147483648 | -1
table1_group_none_2 | 1300071 | t | 57638 | 0 | 2147483647
table1_group_none_2 | 1300071 | t | 57637 | 0 | 2147483647
table4_groupe | 1300072 | t | 57637 | -2147483648 | -1
table4_groupe | 1300072 | t | 57638 | -2147483648 | -1
table4_groupe | 1300073 | t | 57638 | 0 | 2147483647
table4_groupe | 1300073 | t | 57637 | 0 | 2147483647
table1_group_none_3 | 1300074 | t | 57637 | -2147483648 | -715827884
table1_group_none_3 | 1300074 | t | 57638 | -2147483648 | -715827884
table1_group_none_3 | 1300075 | t | 57638 | -715827883 | 715827881
table1_group_none_3 | 1300075 | t | 57637 | -715827883 | 715827881
table1_group_none_3 | 1300076 | t | 57637 | 715827882 | 2147483647
table1_group_none_3 | 1300076 | t | 57638 | 715827882 | 2147483647
table1_group_default | 1300077 | t | 57637 | -2147483648 | -715827884
table1_group_default | 1300077 | t | 57638 | -2147483648 | -715827884
table1_group_default | 1300078 | t | 57638 | -715827883 | 715827881
table1_group_default | 1300078 | t | 57637 | -715827883 | 715827881
table1_group_default | 1300079 | t | 57637 | 715827882 | 2147483647
table1_group_default | 1300079 | t | 57638 | 715827882 | 2147483647
table1_groupf | 1300080 | t | 57637 | |
table1_groupf | 1300080 | t | 57638 | |
table2_groupf | 1300081 | t | 57637 | |
table2_groupf | 1300081 | t | 57638 | |
(108 rows)
-- reset colocation ids to test mark_tables_colocated -- reset colocation ids to test mark_tables_colocated
ALTER SEQUENCE pg_catalog.pg_dist_colocationid_seq RESTART 1; ALTER SEQUENCE pg_catalog.pg_dist_colocationid_seq RESTART 1;
@ -835,7 +859,7 @@ ERROR: cannot colocate tables table1_groupb and table1_groupd
DETAIL: Shard counts don't match for table1_groupb and table1_groupd. DETAIL: Shard counts don't match for table1_groupb and table1_groupd.
SELECT mark_tables_colocated('table1_groupB', ARRAY['table1_groupE']); SELECT mark_tables_colocated('table1_groupB', ARRAY['table1_groupE']);
ERROR: cannot colocate tables table1_groupb and table1_groupe ERROR: cannot colocate tables table1_groupb and table1_groupe
DETAIL: Shard 1300026 of table1_groupb and shard 1300046 of table1_groupe have different number of shard placements. DETAIL: Shard 1300026 of table1_groupb and shard 1300058 of table1_groupe have different number of shard placements.
SELECT mark_tables_colocated('table1_groupB', ARRAY['table1_groupF']); SELECT mark_tables_colocated('table1_groupB', ARRAY['table1_groupF']);
ERROR: cannot colocate tables table1_groupb and table1_groupf ERROR: cannot colocate tables table1_groupb and table1_groupf
DETAIL: Replication models don't match for table1_groupb and table1_groupf. DETAIL: Replication models don't match for table1_groupb and table1_groupf.
@ -918,7 +942,7 @@ SELECT * FROM pg_dist_colocation
--------------+------------+-------------------+------------------------ --------------+------------+-------------------+------------------------
2 | 2 | 1 | 23 2 | 2 | 1 | 23
3 | 2 | 2 | 25 3 | 2 | 2 | 25
4 | 4 | 2 | 23 4 | 8 | 2 | 23
5 | 2 | 2 | 23 5 | 2 | 2 | 23
(4 rows) (4 rows)
@ -962,7 +986,7 @@ SELECT * FROM pg_dist_colocation
--------------+------------+-------------------+------------------------ --------------+------------+-------------------+------------------------
2 | 2 | 1 | 23 2 | 2 | 1 | 23
3 | 2 | 2 | 25 3 | 2 | 2 | 25
4 | 4 | 2 | 23 4 | 8 | 2 | 23
(3 rows) (3 rows)
SELECT logicalrelid, colocationid FROM pg_dist_partition SELECT logicalrelid, colocationid FROM pg_dist_partition

View File

@ -700,13 +700,13 @@ INSERT INTO tt2 SELECT * FROM tt1 WHERE id = 1;
COMMIT; COMMIT;
-- Table should exist on the worker node -- Table should exist on the worker node
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360430'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360066'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------+---------+----------- --------+---------+-----------
id | integer | id | integer |
(1 row) (1 row)
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt2_360462'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt2_360070'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------+---------+----------- --------+---------+-----------
id | integer | id | integer |
@ -728,13 +728,13 @@ SELECT create_distributed_table('append_tt1','id','append');
SELECT master_create_empty_shard('append_tt1'); SELECT master_create_empty_shard('append_tt1');
master_create_empty_shard master_create_empty_shard
--------------------------- ---------------------------
360494 360074
(1 row) (1 row)
ROLLBACK; ROLLBACK;
-- Table exists on the worker node. -- Table exists on the worker node.
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.append_tt1_360494'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.append_tt1_360074'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------+---------+----------- --------+---------+-----------
id | integer | id | integer |
@ -771,7 +771,7 @@ SELECT * FROM tt1 WHERE id = 1;
COMMIT; COMMIT;
-- Placements should be created on the worker -- Placements should be created on the worker
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360495'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360075'::regclass;
Column | Type | Modifiers Column | Type | Modifiers
--------+---------+----------- --------+---------+-----------
id | integer | id | integer |

View File

@ -757,20 +757,20 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360290 lineitem_hash_part -> Update on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360291 lineitem_hash_part -> Update on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360292 lineitem_hash_part -> Update on lineitem_hash_part_360040 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360292 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360040 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360293 lineitem_hash_part -> Update on lineitem_hash_part_360041 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360293 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
EXPLAIN (COSTS FALSE) EXPLAIN (COSTS FALSE)
UPDATE lineitem_hash_part UPDATE lineitem_hash_part
@ -781,13 +781,13 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360290 lineitem_hash_part -> Update on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
Filter: ((l_orderkey = 1) OR (l_orderkey = 3)) Filter: ((l_orderkey = 1) OR (l_orderkey = 3))
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360291 lineitem_hash_part -> Update on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
Filter: ((l_orderkey = 1) OR (l_orderkey = 3)) Filter: ((l_orderkey = 1) OR (l_orderkey = 3))
-- Test multi shard delete -- Test multi shard delete
EXPLAIN (COSTS FALSE) EXPLAIN (COSTS FALSE)
@ -797,20 +797,20 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Delete on lineitem_hash_part_360290 lineitem_hash_part -> Delete on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Delete on lineitem_hash_part_360291 lineitem_hash_part -> Delete on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Delete on lineitem_hash_part_360292 lineitem_hash_part -> Delete on lineitem_hash_part_360040 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360292 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360040 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Delete on lineitem_hash_part_360293 lineitem_hash_part -> Delete on lineitem_hash_part_360041 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360293 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
-- Test track tracker -- Test track tracker
SET citus.task_executor_type TO 'task-tracker'; SET citus.task_executor_type TO 'task-tracker';
SET citus.explain_all_tasks TO off; SET citus.explain_all_tasks TO off;
@ -1072,7 +1072,7 @@ Custom Scan (Citus INSERT ... SELECT via coordinator)
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
-> Seq Scan on orders_hash_part_360295 orders_hash_part -> Seq Scan on orders_hash_part_360043 orders_hash_part
SELECT true AS valid FROM explain_json($$ SELECT true AS valid FROM explain_json($$
INSERT INTO lineitem_hash_part (l_orderkey) INSERT INTO lineitem_hash_part (l_orderkey)
SELECT o_orderkey FROM orders_hash_part LIMIT 3; SELECT o_orderkey FROM orders_hash_part LIMIT 3;
@ -1089,7 +1089,7 @@ Custom Scan (Citus INSERT ... SELECT via coordinator)
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
-> Seq Scan on orders_hash_part_360295 orders_hash_part -> Seq Scan on orders_hash_part_360043 orders_hash_part
EXPLAIN (COSTS OFF) EXPLAIN (COSTS OFF)
INSERT INTO lineitem_hash_part (l_orderkey) INSERT INTO lineitem_hash_part (l_orderkey)
SELECT s FROM generate_series(1,5) s; SELECT s FROM generate_series(1,5) s;

View File

@ -757,20 +757,20 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360290 lineitem_hash_part -> Update on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360291 lineitem_hash_part -> Update on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360292 lineitem_hash_part -> Update on lineitem_hash_part_360040 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360292 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360040 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360293 lineitem_hash_part -> Update on lineitem_hash_part_360041 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360293 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
EXPLAIN (COSTS FALSE) EXPLAIN (COSTS FALSE)
UPDATE lineitem_hash_part UPDATE lineitem_hash_part
@ -781,13 +781,13 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Update on lineitem_hash_part_360290 lineitem_hash_part -> Update on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
Filter: ((l_orderkey = 1) OR (l_orderkey = 3)) Filter: ((l_orderkey = 1) OR (l_orderkey = 3))
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Update on lineitem_hash_part_360291 lineitem_hash_part -> Update on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
Filter: ((l_orderkey = 1) OR (l_orderkey = 3)) Filter: ((l_orderkey = 1) OR (l_orderkey = 3))
-- Test multi shard delete -- Test multi shard delete
EXPLAIN (COSTS FALSE) EXPLAIN (COSTS FALSE)
@ -797,20 +797,20 @@ Custom Scan (Citus Router)
Tasks Shown: All Tasks Shown: All
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Delete on lineitem_hash_part_360290 lineitem_hash_part -> Delete on lineitem_hash_part_360038 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Delete on lineitem_hash_part_360291 lineitem_hash_part -> Delete on lineitem_hash_part_360039 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360291 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360039 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Delete on lineitem_hash_part_360292 lineitem_hash_part -> Delete on lineitem_hash_part_360040 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360292 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360040 lineitem_hash_part
-> Task -> Task
Node: host=localhost port=57638 dbname=regression Node: host=localhost port=57638 dbname=regression
-> Delete on lineitem_hash_part_360293 lineitem_hash_part -> Delete on lineitem_hash_part_360041 lineitem_hash_part
-> Seq Scan on lineitem_hash_part_360293 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360041 lineitem_hash_part
-- Test track tracker -- Test track tracker
SET citus.task_executor_type TO 'task-tracker'; SET citus.task_executor_type TO 'task-tracker';
SET citus.explain_all_tasks TO off; SET citus.explain_all_tasks TO off;
@ -1072,7 +1072,7 @@ Custom Scan (Citus INSERT ... SELECT via coordinator)
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
-> Seq Scan on orders_hash_part_360295 orders_hash_part -> Seq Scan on orders_hash_part_360043 orders_hash_part
SELECT true AS valid FROM explain_json($$ SELECT true AS valid FROM explain_json($$
INSERT INTO lineitem_hash_part (l_orderkey) INSERT INTO lineitem_hash_part (l_orderkey)
SELECT o_orderkey FROM orders_hash_part LIMIT 3; SELECT o_orderkey FROM orders_hash_part LIMIT 3;
@ -1089,7 +1089,7 @@ Custom Scan (Citus INSERT ... SELECT via coordinator)
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
-> Seq Scan on orders_hash_part_360295 orders_hash_part -> Seq Scan on orders_hash_part_360043 orders_hash_part
EXPLAIN (COSTS OFF) EXPLAIN (COSTS OFF)
INSERT INTO lineitem_hash_part (l_orderkey) INSERT INTO lineitem_hash_part (l_orderkey)
SELECT s FROM generate_series(1,5) s; SELECT s FROM generate_series(1,5) s;

View File

@ -31,8 +31,8 @@ EXPLAIN (COSTS FALSE)
Group Key: remote_scan.l_orderkey Group Key: remote_scan.l_orderkey
Filter: (sum(remote_scan.worker_column_3) > '24'::numeric) Filter: (sum(remote_scan.worker_column_3) > '24'::numeric)
-> Custom Scan (Citus Real-Time) -> Custom Scan (Citus Real-Time)
Task Count: 32 Task Count: 4
Tasks Shown: One of 32 Tasks Shown: One of 4
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
@ -83,8 +83,8 @@ EXPLAIN (COSTS FALSE)
Group Key: remote_scan.l_shipmode Group Key: remote_scan.l_shipmode
Filter: (sum(remote_scan.worker_column_3) > '24'::numeric) Filter: (sum(remote_scan.worker_column_3) > '24'::numeric)
-> Custom Scan (Citus Real-Time) -> Custom Scan (Citus Real-Time)
Task Count: 32 Task Count: 4
Tasks Shown: One of 32 Tasks Shown: One of 4
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> HashAggregate -> HashAggregate
@ -107,8 +107,8 @@ EXPLAIN (COSTS FALSE)
Group Key: remote_scan.l_shipmode, remote_scan.l_orderkey Group Key: remote_scan.l_shipmode, remote_scan.l_orderkey
Filter: (sum(remote_scan.worker_column_4) > '24'::numeric) Filter: (sum(remote_scan.worker_column_4) > '24'::numeric)
-> Custom Scan (Citus Real-Time) -> Custom Scan (Citus Real-Time)
Task Count: 32 Task Count: 4
Tasks Shown: One of 32 Tasks Shown: One of 4
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
@ -136,8 +136,8 @@ EXPLAIN (COSTS FALSE)
Group Key: remote_scan.worker_column_2, remote_scan.worker_column_3, remote_scan.worker_column_4 Group Key: remote_scan.worker_column_2, remote_scan.worker_column_3, remote_scan.worker_column_4
Filter: (sum(remote_scan.worker_column_5) > '24'::numeric) Filter: (sum(remote_scan.worker_column_5) > '24'::numeric)
-> Custom Scan (Citus Real-Time) -> Custom Scan (Citus Real-Time)
Task Count: 32 Task Count: 4
Tasks Shown: One of 32 Tasks Shown: One of 4
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> Limit -> Limit
@ -148,7 +148,7 @@ EXPLAIN (COSTS FALSE)
Filter: (sum(lineitem_hash.l_quantity) > '24'::numeric) Filter: (sum(lineitem_hash.l_quantity) > '24'::numeric)
-> Hash Join -> Hash Join
Hash Cond: (orders_hash.o_orderkey = lineitem_hash.l_orderkey) Hash Cond: (orders_hash.o_orderkey = lineitem_hash.l_orderkey)
-> Seq Scan on orders_hash_590032 orders_hash -> Seq Scan on orders_hash_590004 orders_hash
-> Hash -> Hash
-> Seq Scan on lineitem_hash_590000 lineitem_hash -> Seq Scan on lineitem_hash_590000 lineitem_hash
(22 rows) (22 rows)
@ -168,15 +168,15 @@ EXPLAIN (COSTS FALSE)
Group Key: remote_scan.worker_column_2, remote_scan.worker_column_3 Group Key: remote_scan.worker_column_2, remote_scan.worker_column_3
Filter: (sum(remote_scan.worker_column_4) > '24'::numeric) Filter: (sum(remote_scan.worker_column_4) > '24'::numeric)
-> Custom Scan (Citus Real-Time) -> Custom Scan (Citus Real-Time)
Task Count: 32 Task Count: 4
Tasks Shown: One of 32 Tasks Shown: One of 4
-> Task -> Task
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> HashAggregate -> HashAggregate
Group Key: lineitem_hash.l_shipmode, orders_hash.o_clerk Group Key: lineitem_hash.l_shipmode, orders_hash.o_clerk
-> Hash Join -> Hash Join
Hash Cond: (orders_hash.o_orderkey = lineitem_hash.l_orderkey) Hash Cond: (orders_hash.o_orderkey = lineitem_hash.l_orderkey)
-> Seq Scan on orders_hash_590032 orders_hash -> Seq Scan on orders_hash_590004 orders_hash
-> Hash -> Hash
-> Seq Scan on lineitem_hash_590000 lineitem_hash -> Seq Scan on lineitem_hash_590000 lineitem_hash
(18 rows) (18 rows)

View File

@ -636,16 +636,16 @@ ORDER BY
logicalrelid, shardid; logicalrelid, shardid;
logicalrelid | shardid | nodename | nodeport logicalrelid | shardid | nodename | nodeport
-----------------------------+---------+-----------+---------- -----------------------------+---------+-----------+----------
mx_test_schema_1.mx_table_1 | 1310104 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310020 | localhost | 57637
mx_test_schema_1.mx_table_1 | 1310105 | localhost | 57638 mx_test_schema_1.mx_table_1 | 1310021 | localhost | 57638
mx_test_schema_1.mx_table_1 | 1310106 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310022 | localhost | 57637
mx_test_schema_1.mx_table_1 | 1310107 | localhost | 57638 mx_test_schema_1.mx_table_1 | 1310023 | localhost | 57638
mx_test_schema_1.mx_table_1 | 1310108 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310024 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310109 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310025 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310110 | localhost | 57638 mx_test_schema_2.mx_table_2 | 1310026 | localhost | 57638
mx_test_schema_2.mx_table_2 | 1310111 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310027 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310112 | localhost | 57638 mx_test_schema_2.mx_table_2 | 1310028 | localhost | 57638
mx_test_schema_2.mx_table_2 | 1310113 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310029 | localhost | 57637
(10 rows) (10 rows)
@ -686,16 +686,16 @@ ORDER BY
logicalrelid, shardid; logicalrelid, shardid;
logicalrelid | shardid | nodename | nodeport logicalrelid | shardid | nodename | nodeport
-----------------------------+---------+-----------+---------- -----------------------------+---------+-----------+----------
mx_test_schema_1.mx_table_1 | 1310104 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310020 | localhost | 57637
mx_test_schema_1.mx_table_1 | 1310105 | localhost | 57638 mx_test_schema_1.mx_table_1 | 1310021 | localhost | 57638
mx_test_schema_1.mx_table_1 | 1310106 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310022 | localhost | 57637
mx_test_schema_1.mx_table_1 | 1310107 | localhost | 57638 mx_test_schema_1.mx_table_1 | 1310023 | localhost | 57638
mx_test_schema_1.mx_table_1 | 1310108 | localhost | 57637 mx_test_schema_1.mx_table_1 | 1310024 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310109 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310025 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310110 | localhost | 57638 mx_test_schema_2.mx_table_2 | 1310026 | localhost | 57638
mx_test_schema_2.mx_table_2 | 1310111 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310027 | localhost | 57637
mx_test_schema_2.mx_table_2 | 1310112 | localhost | 57638 mx_test_schema_2.mx_table_2 | 1310028 | localhost | 57638
mx_test_schema_2.mx_table_2 | 1310113 | localhost | 57637 mx_test_schema_2.mx_table_2 | 1310029 | localhost | 57637
(10 rows) (10 rows)
-- Check that metadata of MX tables don't exist on the non-metadata worker -- Check that metadata of MX tables don't exist on the non-metadata worker
@ -1277,8 +1277,8 @@ ORDER BY
nodeport; nodeport;
logicalrelid | partmethod | repmodel | shardid | placementid | nodename | nodeport logicalrelid | partmethod | repmodel | shardid | placementid | nodename | nodeport
--------------+------------+----------+---------+-------------+-----------+---------- --------------+------------+----------+---------+-------------+-----------+----------
mx_ref | n | t | 1310183 | 100183 | localhost | 57637 mx_ref | n | t | 1310071 | 100071 | localhost | 57637
mx_ref | n | t | 1310183 | 100184 | localhost | 57638 mx_ref | n | t | 1310071 | 100072 | localhost | 57638
(2 rows) (2 rows)
@ -1363,7 +1363,7 @@ FROM pg_dist_shard NATURAL JOIN pg_dist_shard_placement
WHERE logicalrelid='mx_ref'::regclass; WHERE logicalrelid='mx_ref'::regclass;
shardid | nodename | nodeport shardid | nodename | nodeport
---------+-----------+---------- ---------+-----------+----------
1310184 | localhost | 57637 1310072 | localhost | 57637
(1 row) (1 row)
\c - - - :worker_1_port \c - - - :worker_1_port
@ -1372,7 +1372,7 @@ FROM pg_dist_shard NATURAL JOIN pg_dist_shard_placement
WHERE logicalrelid='mx_ref'::regclass; WHERE logicalrelid='mx_ref'::regclass;
shardid | nodename | nodeport shardid | nodename | nodeport
---------+-----------+---------- ---------+-----------+----------
1310184 | localhost | 57637 1310072 | localhost | 57637
(1 row) (1 row)
\c - - - :master_port \c - - - :master_port
@ -1389,8 +1389,8 @@ WHERE logicalrelid='mx_ref'::regclass
ORDER BY shardid, nodeport; ORDER BY shardid, nodeport;
shardid | nodename | nodeport shardid | nodename | nodeport
---------+-----------+---------- ---------+-----------+----------
1310184 | localhost | 57637 1310072 | localhost | 57637
1310184 | localhost | 57638 1310072 | localhost | 57638
(2 rows) (2 rows)
\c - - - :worker_1_port \c - - - :worker_1_port
@ -1400,8 +1400,8 @@ WHERE logicalrelid='mx_ref'::regclass
ORDER BY shardid, nodeport; ORDER BY shardid, nodeport;
shardid | nodename | nodeport shardid | nodename | nodeport
---------+-----------+---------- ---------+-----------+----------
1310184 | localhost | 57637 1310072 | localhost | 57637
1310184 | localhost | 57638 1310072 | localhost | 57638
(2 rows) (2 rows)
-- Get the metadata back into a consistent state -- Get the metadata back into a consistent state

View File

@ -211,7 +211,7 @@ EXPLAIN (COSTS FALSE)
-> HashAggregate -> HashAggregate
Group Key: l_orderkey Group Key: l_orderkey
Filter: (count(*) > 5) Filter: (count(*) > 5)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
Filter: (l_orderkey < 200) Filter: (l_orderkey < 200)
(15 rows) (15 rows)
@ -259,7 +259,7 @@ EXPLAIN (COSTS FALSE)
Node: host=localhost port=57637 dbname=regression Node: host=localhost port=57637 dbname=regression
-> HashAggregate -> HashAggregate
Group Key: l_partkey Group Key: l_partkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(13 rows) (13 rows)
-- distinct on non-partition column and avg -- distinct on non-partition column and avg
@ -332,7 +332,7 @@ EXPLAIN (COSTS FALSE)
-> Unique -> Unique
-> Sort -> Sort
Sort Key: l_partkey, l_suppkey Sort Key: l_partkey, l_suppkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
Filter: ((l_orderkey < 100) AND (l_shipmode = 'AIR'::bpchar)) Filter: ((l_orderkey < 100) AND (l_shipmode = 'AIR'::bpchar))
(14 rows) (14 rows)
@ -374,7 +374,7 @@ EXPLAIN (COSTS FALSE)
-> Unique -> Unique
-> Sort -> Sort
Sort Key: l_orderkey Sort Key: l_orderkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
Filter: (l_orderkey < 35) Filter: (l_orderkey < 35)
(13 rows) (13 rows)
@ -430,7 +430,7 @@ EXPLAIN (COSTS FALSE)
-> Unique -> Unique
-> Sort -> Sort
Sort Key: l_partkey, l_orderkey Sort Key: l_partkey, l_orderkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(14 rows) (14 rows)
-- distinct on with joins -- distinct on with joins
@ -473,9 +473,9 @@ EXPLAIN (COSTS FALSE)
Sort Key: orders_hash_part.o_custkey, lineitem_hash_part.l_orderkey Sort Key: orders_hash_part.o_custkey, lineitem_hash_part.l_orderkey
-> Hash Join -> Hash Join
Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey) Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Hash -> Hash
-> Seq Scan on orders_hash_part_360294 orders_hash_part -> Seq Scan on orders_hash_part_360042 orders_hash_part
Filter: (o_custkey < 15) Filter: (o_custkey < 15)
(17 rows) (17 rows)
@ -500,9 +500,9 @@ EXPLAIN (COSTS FALSE)
Sort Key: orders_hash_part.o_custkey Sort Key: orders_hash_part.o_custkey
-> Hash Join -> Hash Join
Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey) Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Hash -> Hash
-> Seq Scan on orders_hash_part_360294 orders_hash_part -> Seq Scan on orders_hash_part_360042 orders_hash_part
Filter: (o_custkey < 15) Filter: (o_custkey < 15)
(17 rows) (17 rows)
@ -571,9 +571,9 @@ EXPLAIN (COSTS FALSE)
Sort Key: orders_hash_part.o_custkey, lineitem_hash_part.l_orderkey Sort Key: orders_hash_part.o_custkey, lineitem_hash_part.l_orderkey
-> Hash Join -> Hash Join
Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey) Hash Cond: (lineitem_hash_part.l_orderkey = orders_hash_part.o_orderkey)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
-> Hash -> Hash
-> Seq Scan on orders_hash_part_360294 orders_hash_part -> Seq Scan on orders_hash_part_360042 orders_hash_part
Filter: (o_custkey < 20) Filter: (o_custkey < 20)
(17 rows) (17 rows)
@ -661,7 +661,7 @@ EXPLAIN (COSTS FALSE)
Sort Key: l_orderkey, l_partkey Sort Key: l_orderkey, l_partkey
-> HashAggregate -> HashAggregate
Group Key: l_orderkey, l_partkey Group Key: l_orderkey, l_partkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(16 rows) (16 rows)
SELECT DISTINCT l_orderkey, cnt SELECT DISTINCT l_orderkey, cnt
@ -714,7 +714,7 @@ EXPLAIN (COSTS FALSE)
Group Key: lineitem_hash_part.l_orderkey, count(*) Group Key: lineitem_hash_part.l_orderkey, count(*)
-> HashAggregate -> HashAggregate
Group Key: lineitem_hash_part.l_orderkey Group Key: lineitem_hash_part.l_orderkey
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(18 rows) (18 rows)
-- distinct on partition column -- distinct on partition column
@ -767,7 +767,7 @@ EXPLAIN (COSTS FALSE)
Sort Key: q.l_orderkey, q.l_partkey Sort Key: q.l_orderkey, q.l_partkey
-> Subquery Scan on q -> Subquery Scan on q
Filter: (q.r > 1) Filter: (q.r > 1)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(16 rows) (16 rows)
-- distinct on non-partition column -- distinct on non-partition column
@ -819,6 +819,6 @@ EXPLAIN (COSTS FALSE)
Sort Key: q.l_partkey, q.l_orderkey Sort Key: q.l_partkey, q.l_orderkey
-> Subquery Scan on q -> Subquery Scan on q
Filter: (q.r > 1) Filter: (q.r > 1)
-> Seq Scan on lineitem_hash_part_360290 lineitem_hash_part -> Seq Scan on lineitem_hash_part_360038 lineitem_hash_part
(16 rows) (16 rows)

View File

@ -179,10 +179,10 @@ SELECT create_distributed_table('test_append_table','id','append');
SELECT master_create_empty_shard('test_append_table'); SELECT master_create_empty_shard('test_append_table');
master_create_empty_shard master_create_empty_shard
--------------------------- ---------------------------
1440066 1440010
(1 row) (1 row)
SELECT * FROM master_append_table_to_shard(1440066, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440010, 'append_stage_table', 'localhost', :master_port);
master_append_table_to_shard master_append_table_to_shard
------------------------------ ------------------------------
0.0266667 0.0266667
@ -191,10 +191,10 @@ SELECT * FROM master_append_table_to_shard(1440066, 'append_stage_table', 'local
SELECT master_create_empty_shard('test_append_table') AS new_shard_id; SELECT master_create_empty_shard('test_append_table') AS new_shard_id;
new_shard_id new_shard_id
-------------- --------------
1440067 1440011
(1 row) (1 row)
SELECT * FROM master_append_table_to_shard(1440067, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440011, 'append_stage_table', 'localhost', :master_port);
master_append_table_to_shard master_append_table_to_shard
------------------------------ ------------------------------
0.0266667 0.0266667
@ -248,14 +248,14 @@ UPDATE tt1 SET col_2 = 12 WHERE col_2 > 10 and col_2 < 20;
-- Update rows from partititon tt1_510 -- Update rows from partititon tt1_510
UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5; UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5;
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
id | col_2 id | col_2
----+------- ----+-------
8 | 12
4 | 7
7 | 7
6 | 12
2 | 12 2 | 12
4 | 7
6 | 12
7 | 7
8 | 12
9 | 7 9 | 7
(6 rows) (6 rows)
@ -266,7 +266,7 @@ UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5;
DELETE FROM tt1_510; DELETE FROM tt1_510;
DELETE FROM tt1_1120; DELETE FROM tt1_1120;
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
id | col_2 id | col_2
----+------- ----+-------
(0 rows) (0 rows)
@ -284,13 +284,13 @@ BEGIN;
\COPY tt2 FROM STDIN DELIMITER AS ','; \COPY tt2 FROM STDIN DELIMITER AS ',';
UPDATE tt2 SET col_2 = 1; UPDATE tt2 SET col_2 = 1;
COMMIT; COMMIT;
SELECT * FROM tt2; SELECT * FROM tt2 ORDER BY id;
id | col_2 id | col_2
----+------- ----+-------
1 | 1 1 | 1
7 | 1
3 | 1
2 | 1 2 | 1
3 | 1
7 | 1
9 | 1 9 | 1
(5 rows) (5 rows)
@ -299,10 +299,10 @@ UPDATE tt2 SET col_2 = 5 RETURNING id, col_2;
id | col_2 id | col_2
----+------- ----+-------
1 | 5 1 | 5
7 | 5
3 | 5 3 | 5
2 | 5 7 | 5
9 | 5 9 | 5
2 | 5
(5 rows) (5 rows)
SET citus.multi_shard_modify_mode to sequential; SET citus.multi_shard_modify_mode to sequential;
@ -310,10 +310,10 @@ UPDATE tt2 SET col_2 = 3 RETURNING id, col_2;
id | col_2 id | col_2
----+------- ----+-------
1 | 3 1 | 3
7 | 3
3 | 3 3 | 3
2 | 3 7 | 3
9 | 3 9 | 3
2 | 3
(5 rows) (5 rows)
DROP TABLE tt2; DROP TABLE tt2;

View File

@ -179,10 +179,10 @@ SELECT create_distributed_table('test_append_table','id','append');
SELECT master_create_empty_shard('test_append_table'); SELECT master_create_empty_shard('test_append_table');
master_create_empty_shard master_create_empty_shard
--------------------------- ---------------------------
1440066 1440010
(1 row) (1 row)
SELECT * FROM master_append_table_to_shard(1440066, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440010, 'append_stage_table', 'localhost', :master_port);
master_append_table_to_shard master_append_table_to_shard
------------------------------ ------------------------------
0.0266667 0.0266667
@ -191,10 +191,10 @@ SELECT * FROM master_append_table_to_shard(1440066, 'append_stage_table', 'local
SELECT master_create_empty_shard('test_append_table') AS new_shard_id; SELECT master_create_empty_shard('test_append_table') AS new_shard_id;
new_shard_id new_shard_id
-------------- --------------
1440067 1440011
(1 row) (1 row)
SELECT * FROM master_append_table_to_shard(1440067, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440011, 'append_stage_table', 'localhost', :master_port);
master_append_table_to_shard master_append_table_to_shard
------------------------------ ------------------------------
0.0266667 0.0266667
@ -272,9 +272,9 @@ LINE 1: UPDATE tt1 SET col_2 = 12 WHERE col_2 > 10 and col_2 < 20;
UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5; UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5;
ERROR: current transaction is aborted, commands ignored until end of transaction block ERROR: current transaction is aborted, commands ignored until end of transaction block
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
ERROR: relation "tt1" does not exist ERROR: relation "tt1" does not exist
LINE 1: SELECT * FROM tt1; LINE 1: SELECT * FROM tt1 ORDER BY id;
^ ^
-- Modify main table and partition table within same transaction -- Modify main table and partition table within same transaction
BEGIN; BEGIN;
@ -289,9 +289,9 @@ ERROR: current transaction is aborted, commands ignored until end of transactio
DELETE FROM tt1_1120; DELETE FROM tt1_1120;
ERROR: current transaction is aborted, commands ignored until end of transaction block ERROR: current transaction is aborted, commands ignored until end of transaction block
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
ERROR: relation "tt1" does not exist ERROR: relation "tt1" does not exist
LINE 1: SELECT * FROM tt1; LINE 1: SELECT * FROM tt1 ORDER BY id;
^ ^
DROP TABLE tt1; DROP TABLE tt1;
ERROR: table "tt1" does not exist ERROR: table "tt1" does not exist
@ -307,13 +307,13 @@ BEGIN;
\COPY tt2 FROM STDIN DELIMITER AS ','; \COPY tt2 FROM STDIN DELIMITER AS ',';
UPDATE tt2 SET col_2 = 1; UPDATE tt2 SET col_2 = 1;
COMMIT; COMMIT;
SELECT * FROM tt2; SELECT * FROM tt2 ORDER BY id;
id | col_2 id | col_2
----+------- ----+-------
1 | 1 1 | 1
7 | 1
3 | 1
2 | 1 2 | 1
3 | 1
7 | 1
9 | 1 9 | 1
(5 rows) (5 rows)
@ -322,10 +322,10 @@ UPDATE tt2 SET col_2 = 5 RETURNING id, col_2;
id | col_2 id | col_2
----+------- ----+-------
1 | 5 1 | 5
7 | 5
3 | 5 3 | 5
2 | 5 7 | 5
9 | 5 9 | 5
2 | 5
(5 rows) (5 rows)
SET citus.multi_shard_modify_mode to sequential; SET citus.multi_shard_modify_mode to sequential;
@ -333,10 +333,10 @@ UPDATE tt2 SET col_2 = 3 RETURNING id, col_2;
id | col_2 id | col_2
----+------- ----+-------
1 | 3 1 | 3
7 | 3
3 | 3 3 | 3
2 | 3 7 | 3
9 | 3 9 | 3
2 | 3
(5 rows) (5 rows)
DROP TABLE tt2; DROP TABLE tt2;

View File

@ -320,7 +320,7 @@ SELECT * FROM test_local_truncate;
SELECT master_drop_all_shards('test_local_truncate', 'pubic', 'test_local_truncate'); SELECT master_drop_all_shards('test_local_truncate', 'pubic', 'test_local_truncate');
master_drop_all_shards master_drop_all_shards
------------------------ ------------------------
32 4
(1 row) (1 row)
DELETE FROM pg_dist_partition WHERE logicalrelid = 'test_local_truncate'::regclass; DELETE FROM pg_dist_partition WHERE logicalrelid = 'test_local_truncate'::regclass;
@ -356,7 +356,7 @@ SELECT * FROM test_local_truncate;
SELECT master_drop_all_shards('test_local_truncate', 'pubic', 'test_local_truncate'); SELECT master_drop_all_shards('test_local_truncate', 'pubic', 'test_local_truncate');
master_drop_all_shards master_drop_all_shards
------------------------ ------------------------
32 4
(1 row) (1 row)
DELETE FROM pg_dist_partition WHERE logicalrelid = 'test_local_truncate'::regclass; DELETE FROM pg_dist_partition WHERE logicalrelid = 'test_local_truncate'::regclass;

View File

@ -426,7 +426,6 @@ CREATE TABLE trigger_table (
); );
SELECT create_distributed_table('trigger_table', 'id'); SELECT create_distributed_table('trigger_table', 'id');
-- first set a trigger on a shard -- first set a trigger on a shard
\c - - - :worker_1_port \c - - - :worker_1_port
@ -438,7 +437,7 @@ CREATE FUNCTION update_value() RETURNS trigger AS $up$
$up$ LANGUAGE plpgsql; $up$ LANGUAGE plpgsql;
CREATE TRIGGER update_value CREATE TRIGGER update_value
BEFORE INSERT ON trigger_table_220056 BEFORE INSERT ON trigger_table_220028
FOR EACH ROW EXECUTE PROCEDURE update_value(); FOR EACH ROW EXECUTE PROCEDURE update_value();
\c - - - :master_port \c - - - :master_port

View File

@ -891,7 +891,7 @@ CREATE FUNCTION update_value() RETURNS trigger AS $up$
END; END;
$up$ LANGUAGE plpgsql; $up$ LANGUAGE plpgsql;
CREATE TRIGGER update_value CREATE TRIGGER update_value
BEFORE INSERT ON trigger_table_220056 BEFORE INSERT ON trigger_table_220028
FOR EACH ROW EXECUTE PROCEDURE update_value(); FOR EACH ROW EXECUTE PROCEDURE update_value();
\c - - - :master_port \c - - - :master_port
INSERT INTO trigger_table VALUES (1, 'trigger disabled'); INSERT INTO trigger_table VALUES (1, 'trigger disabled');

View File

@ -238,6 +238,7 @@ push(@pgOptions, '-c', "shared_preload_libraries=citus");
push(@pgOptions, '-c', "wal_level=logical"); push(@pgOptions, '-c', "wal_level=logical");
# Citus options set for the tests # Citus options set for the tests
push(@pgOptions, '-c', "citus.shard_count=4");
push(@pgOptions, '-c', "citus.shard_max_size=300kB"); push(@pgOptions, '-c', "citus.shard_max_size=300kB");
push(@pgOptions, '-c', "citus.max_running_tasks_per_node=4"); push(@pgOptions, '-c', "citus.max_running_tasks_per_node=4");
push(@pgOptions, '-c', "citus.expire_cached_shards=on"); push(@pgOptions, '-c', "citus.expire_cached_shards=on");

View File

@ -398,10 +398,9 @@ ROLLBACK;
-- There should be no constraint on master and worker(s) -- There should be no constraint on master and worker(s)
SELECT "Constraint", "Definition" FROM table_checks WHERE relid='products'::regclass; SELECT "Constraint", "Definition" FROM table_checks WHERE relid='products'::regclass;
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450202'::regclass; SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450034'::regclass;
\c - - - :master_port \c - - - :master_port
@ -418,7 +417,7 @@ SELECT "Constraint", "Definition" FROM table_checks WHERE relid='products'::regc
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450202'::regclass; SELECT "Constraint", "Definition" FROM table_checks WHERE relid='public.products_1450034'::regclass;
\c - - - :master_port \c - - - :master_port
DROP TABLE products; DROP TABLE products;

View File

@ -184,7 +184,7 @@ CREATE TABLE table2_groupC ( id text );
SELECT create_distributed_table('table2_groupC', 'id'); SELECT create_distributed_table('table2_groupC', 'id');
-- change shard count -- change shard count
SET citus.shard_count = 4; SET citus.shard_count = 8;
CREATE TABLE table1_groupD ( id int ); CREATE TABLE table1_groupD ( id int );
SELECT create_distributed_table('table1_groupD', 'id'); SELECT create_distributed_table('table1_groupD', 'id');
@ -285,14 +285,13 @@ SELECT create_distributed_table('table_failing', 'id', colocate_with => NULL);
-- check with different distribution column types -- check with different distribution column types
CREATE TABLE table_bigint ( id bigint ); CREATE TABLE table_bigint ( id bigint );
SELECT create_distributed_table('table_bigint', 'id', colocate_with => 'table1_groupE'); SELECT create_distributed_table('table_bigint', 'id', colocate_with => 'table1_groupE');
-- check worker table schemas -- check worker table schemas
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='public.table3_groupE_1300050'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='public.table3_groupE_1300062'::regclass;
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='schema_collocation.table4_groupE_1300052'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid='schema_collocation.table4_groupE_1300064'::regclass;
\c - - - :master_port \c - - - :master_port
SET citus.next_shard_id TO 1300068; SET citus.next_shard_id TO 1300080;
CREATE TABLE table1_groupF ( id int ); CREATE TABLE table1_groupF ( id int );
SELECT create_reference_table('table1_groupF'); SELECT create_reference_table('table1_groupF');

View File

@ -377,11 +377,10 @@ INSERT INTO tt1 VALUES(1);
INSERT INTO tt2 SELECT * FROM tt1 WHERE id = 1; INSERT INTO tt2 SELECT * FROM tt1 WHERE id = 1;
COMMIT; COMMIT;
-- Table should exist on the worker node -- Table should exist on the worker node
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360430'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360066'::regclass;
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt2_360462'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt2_360070'::regclass;
\c - - - :master_port \c - - - :master_port
DROP TABLE tt1; DROP TABLE tt1;
@ -397,7 +396,7 @@ ROLLBACK;
-- Table exists on the worker node. -- Table exists on the worker node.
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.append_tt1_360494'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.append_tt1_360074'::regclass;
\c - - - :master_port \c - - - :master_port
-- There should be no table on the worker node -- There should be no table on the worker node
@ -417,7 +416,7 @@ COMMIT;
-- Placements should be created on the worker -- Placements should be created on the worker
\c - - - :worker_1_port \c - - - :worker_1_port
SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360495'::regclass; SELECT "Column", "Type", "Modifiers" FROM table_desc WHERE relid = 'public.tt1_360075'::regclass;
\c - - - :master_port \c - - - :master_port
DROP TABLE tt1; DROP TABLE tt1;

View File

@ -138,9 +138,9 @@ INSERT INTO append_stage_table VALUES(5,4);
CREATE TABLE test_append_table(id int, col_2 int); CREATE TABLE test_append_table(id int, col_2 int);
SELECT create_distributed_table('test_append_table','id','append'); SELECT create_distributed_table('test_append_table','id','append');
SELECT master_create_empty_shard('test_append_table'); SELECT master_create_empty_shard('test_append_table');
SELECT * FROM master_append_table_to_shard(1440066, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440010, 'append_stage_table', 'localhost', :master_port);
SELECT master_create_empty_shard('test_append_table') AS new_shard_id; SELECT master_create_empty_shard('test_append_table') AS new_shard_id;
SELECT * FROM master_append_table_to_shard(1440067, 'append_stage_table', 'localhost', :master_port); SELECT * FROM master_append_table_to_shard(1440011, 'append_stage_table', 'localhost', :master_port);
UPDATE test_append_table SET col_2 = 5; UPDATE test_append_table SET col_2 = 5;
SELECT * FROM test_append_table; SELECT * FROM test_append_table;
@ -169,7 +169,7 @@ UPDATE tt1 SET col_2 = 12 WHERE col_2 > 10 and col_2 < 20;
-- Update rows from partititon tt1_510 -- Update rows from partititon tt1_510
UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5; UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5;
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
-- Modify main table and partition table within same transaction -- Modify main table and partition table within same transaction
BEGIN; BEGIN;
@ -178,7 +178,7 @@ UPDATE tt1 SET col_2 = 7 WHERE col_2 < 10 and col_2 > 5;
DELETE FROM tt1_510; DELETE FROM tt1_510;
DELETE FROM tt1_1120; DELETE FROM tt1_1120;
COMMIT; COMMIT;
SELECT * FROM tt1; SELECT * FROM tt1 ORDER BY id;
DROP TABLE tt1; DROP TABLE tt1;
-- Update and copy in the same transaction -- Update and copy in the same transaction
@ -195,7 +195,7 @@ BEGIN;
\. \.
UPDATE tt2 SET col_2 = 1; UPDATE tt2 SET col_2 = 1;
COMMIT; COMMIT;
SELECT * FROM tt2; SELECT * FROM tt2 ORDER BY id;
-- Test returning with both type of executors -- Test returning with both type of executors
UPDATE tt2 SET col_2 = 5 RETURNING id, col_2; UPDATE tt2 SET col_2 = 5 RETURNING id, col_2;