mirror of https://github.com/citusdata/citus.git
Error for single shard table creation if replication factor > 1 (#7006)
Error for single shard table creation if replication factor > 1pull/6979/head
parent
4f793abc4a
commit
002a88ae7f
|
@ -1086,6 +1086,14 @@ CreateCitusTable(Oid relationId, CitusTableType tableType,
|
|||
|
||||
relation_close(relation, NoLock);
|
||||
|
||||
if (tableType == SINGLE_SHARD_DISTRIBUTED && ShardReplicationFactor > 1)
|
||||
{
|
||||
ereport(ERROR, (errmsg("could not create single shard table: "
|
||||
"citus.shard_replication_factor is greater than 1"),
|
||||
errhint("Consider setting citus.shard_replication_factor to 1 "
|
||||
"and try again")));
|
||||
}
|
||||
|
||||
/*
|
||||
* EnsureTableNotDistributed errors out when relation is a citus table but
|
||||
* we don't want to ask user to first undistribute their citus local tables
|
||||
|
|
|
@ -888,6 +888,7 @@ SELECT citus_stat_tenants_reset();
|
|||
|
||||
(1 row)
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE dist_tbl_text_single_shard(a text, b int);
|
||||
select create_distributed_table('dist_tbl_text_single_shard', NULL);
|
||||
create_distributed_table
|
||||
|
|
|
@ -2,6 +2,7 @@ CREATE SCHEMA insert_select_single_shard_table;
|
|||
SET search_path TO insert_select_single_shard_table;
|
||||
SET citus.next_shard_id TO 1820000;
|
||||
SET citus.shard_count TO 32;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SET client_min_messages TO NOTICE;
|
||||
CREATE TABLE nullkey_c1_t1(a int, b int);
|
||||
CREATE TABLE nullkey_c1_t2(a int, b int);
|
||||
|
|
|
@ -8,6 +8,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -53,6 +54,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -90,6 +92,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -137,6 +140,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -174,6 +178,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -184,6 +189,7 @@ citus_schema_distribute
|
|||
(1 row)
|
||||
|
||||
step s2-add-table:
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE tenant1.table4(id int PRIMARY KEY, name text, col bigint);
|
||||
<waiting ...>
|
||||
step s1-commit:
|
||||
|
@ -223,6 +229,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -233,6 +240,7 @@ citus_schema_undistribute
|
|||
(1 row)
|
||||
|
||||
step s2-add-table:
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE tenant1.table4(id int PRIMARY KEY, name text, col bigint);
|
||||
<waiting ...>
|
||||
step s1-commit:
|
||||
|
@ -261,6 +269,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -308,6 +317,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -345,6 +355,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -393,6 +404,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -431,6 +443,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -479,6 +492,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -518,6 +532,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -566,6 +581,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -603,6 +619,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -651,6 +668,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -689,6 +707,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -737,6 +756,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -778,6 +798,7 @@ step s2-create-unique-index:
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -829,6 +850,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -867,6 +889,7 @@ citus_add_local_table_to_metadata
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -916,6 +939,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -959,6 +983,7 @@ step s2-insert:
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -1011,6 +1036,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
@ -1053,6 +1079,7 @@ step s2-insert:
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-distribute:
|
||||
SELECT citus_schema_distribute('tenant1');
|
||||
|
@ -1105,6 +1132,7 @@ citus_schema_distribute
|
|||
|
||||
step s1-begin:
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
step s1-schema-undistribute:
|
||||
SELECT citus_schema_undistribute('tenant1');
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
Parsed test spec with 2 sessions
|
||||
|
||||
starting permutation: s1-begin s2-begin s1-tenant-1-create-table-1 s2-tenant-1-create-table-2 s1-commit s2-tenant-1-verify-colocation s2-commit
|
||||
step s1-begin: BEGIN;
|
||||
step s2-begin: BEGIN;
|
||||
step s1-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s2-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s1-tenant-1-create-table-1: CREATE TABLE tenant_1.tbl_1 (a int);
|
||||
step s2-tenant-1-create-table-2: CREATE TABLE tenant_1.tbl_2 (a int);
|
||||
step s1-commit: COMMIT;
|
||||
|
@ -15,8 +15,8 @@ t
|
|||
step s2-commit: COMMIT;
|
||||
|
||||
starting permutation: s1-begin s2-begin s1-tenant-4-create-table-1 s2-tenant-4-create-table-2 s1-commit s2-tenant-4-verify-colocation s2-commit
|
||||
step s1-begin: BEGIN;
|
||||
step s2-begin: BEGIN;
|
||||
step s1-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s2-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s1-tenant-4-create-table-1: CREATE TABLE tenant_4.tbl_1 (a int);
|
||||
step s2-tenant-4-create-table-2: CREATE TABLE tenant_4.tbl_2 (a int);
|
||||
step s1-commit: COMMIT;
|
||||
|
@ -29,8 +29,8 @@ t
|
|||
step s2-commit: COMMIT;
|
||||
|
||||
starting permutation: s1-begin s2-begin s1-tenant-2-create-table-1 s2-tenant-3-create-table-1 s1-commit s2-commit
|
||||
step s1-begin: BEGIN;
|
||||
step s2-begin: BEGIN;
|
||||
step s1-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s2-begin: BEGIN; SET citus.shard_replication_factor TO 1;
|
||||
step s1-tenant-2-create-table-1: CREATE TABLE tenant_2.tbl_1 (a int);
|
||||
step s2-tenant-3-create-table-1: CREATE TABLE tenant_3.tbl_1 (a int);
|
||||
step s1-commit: COMMIT;
|
||||
|
|
|
@ -1333,6 +1333,7 @@ SELECT * FROM multi_extension.print_extension_changes();
|
|||
-- Test downgrade to 11.3-1 from 12.0-1
|
||||
ALTER EXTENSION citus UPDATE TO '12.0-1';
|
||||
CREATE TABLE null_shard_key (x int, y int);
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('null_shard_key', null);
|
||||
create_distributed_table
|
||||
---------------------------------------------------------------------
|
||||
|
|
|
@ -118,7 +118,6 @@ SELECT create_distributed_table('mx_test_table', 'col_1');
|
|||
(1 row)
|
||||
|
||||
reset citus.shard_count;
|
||||
reset citus.shard_replication_factor;
|
||||
-- Set the replication model of the test table to streaming replication so that it is
|
||||
-- considered as an MX table
|
||||
UPDATE pg_dist_partition SET repmodel='s' WHERE logicalrelid='mx_test_table'::regclass;
|
||||
|
@ -131,6 +130,7 @@ SELECT create_distributed_table('single_shard_tbl', null);
|
|||
(1 row)
|
||||
|
||||
INSERT INTO single_shard_tbl VALUES (1);
|
||||
reset citus.shard_replication_factor;
|
||||
-- Show that the created MX table is and its sequences are included in the activate node snapshot
|
||||
SELECT unnest(activate_node_snapshot()) order by 1;
|
||||
unnest
|
||||
|
@ -184,7 +184,7 @@ SELECT unnest(activate_node_snapshot()) order by 1;
|
|||
UPDATE pg_dist_node SET isactive = TRUE WHERE nodeid = 2
|
||||
UPDATE pg_dist_node SET metadatasynced = TRUE WHERE nodeid = 2
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (2, 8, 1, 'integer'::regtype, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (3, 1, 2, 0, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (3, 1, 1, 0, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('database', ARRAY['regression']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('role', ARRAY['postgres']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('schema', ARRAY['public']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
|
|
|
@ -118,7 +118,6 @@ SELECT create_distributed_table('mx_test_table', 'col_1');
|
|||
(1 row)
|
||||
|
||||
reset citus.shard_count;
|
||||
reset citus.shard_replication_factor;
|
||||
-- Set the replication model of the test table to streaming replication so that it is
|
||||
-- considered as an MX table
|
||||
UPDATE pg_dist_partition SET repmodel='s' WHERE logicalrelid='mx_test_table'::regclass;
|
||||
|
@ -131,6 +130,7 @@ SELECT create_distributed_table('single_shard_tbl', null);
|
|||
(1 row)
|
||||
|
||||
INSERT INTO single_shard_tbl VALUES (1);
|
||||
reset citus.shard_replication_factor;
|
||||
-- Show that the created MX table is and its sequences are included in the activate node snapshot
|
||||
SELECT unnest(activate_node_snapshot()) order by 1;
|
||||
unnest
|
||||
|
@ -184,7 +184,7 @@ SELECT unnest(activate_node_snapshot()) order by 1;
|
|||
UPDATE pg_dist_node SET isactive = TRUE WHERE nodeid = 2
|
||||
UPDATE pg_dist_node SET metadatasynced = TRUE WHERE nodeid = 2
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (2, 8, 1, 'integer'::regtype, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (3, 1, 2, 0, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH colocation_group_data (colocationid, shardcount, replicationfactor, distributioncolumntype, distributioncolumncollationname, distributioncolumncollationschema) AS (VALUES (3, 1, 1, 0, NULL, NULL)) SELECT pg_catalog.citus_internal_add_colocation_metadata(colocationid, shardcount, replicationfactor, distributioncolumntype, coalesce(c.oid, 0)) FROM colocation_group_data d LEFT JOIN pg_collation c ON (d.distributioncolumncollationname = c.collname AND d.distributioncolumncollationschema::regnamespace = c.collnamespace)
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('database', ARRAY['regression']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('role', ARRAY['postgres']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
WITH distributed_object_data(typetext, objnames, objargs, distargumentindex, colocationid, force_delegation) AS (VALUES ('schema', ARRAY['public']::text[], ARRAY[]::text[], -1, 0, false)) SELECT citus_internal_add_object_metadata(typetext, objnames, objargs, distargumentindex::int, colocationid::int, force_delegation::bool) FROM distributed_object_data;
|
||||
|
|
|
@ -2,6 +2,7 @@ CREATE SCHEMA query_single_shard_table;
|
|||
SET search_path TO query_single_shard_table;
|
||||
SET citus.next_shard_id TO 1620000;
|
||||
SET citus.shard_count TO 32;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SET client_min_messages TO NOTICE;
|
||||
CREATE TABLE nullkey_c1_t1(a int, b int);
|
||||
CREATE TABLE nullkey_c1_t2(a int, b int);
|
||||
|
@ -43,6 +44,7 @@ SELECT create_distributed_table('nullkey_c3_t1', null, colocate_with=>'none');
|
|||
(1 row)
|
||||
|
||||
INSERT INTO nullkey_c3_t1 SELECT i, i FROM generate_series(1, 8) i;
|
||||
RESET citus.shard_replication_factor;
|
||||
CREATE TABLE reference_table(a int, b int);
|
||||
SELECT create_reference_table('reference_table');
|
||||
create_reference_table
|
||||
|
@ -81,6 +83,7 @@ INSERT INTO articles_hash VALUES ( 4, 4, 'altdorfer', 14551),( 5, 5, 'aruru',
|
|||
(28, 8, 'aerophyte', 5454),(29, 9, 'amateur', 9524),
|
||||
(42, 2, 'ausable', 15885),(43, 3, 'affixal', 12723),
|
||||
(49, 9, 'anyone', 2681),(50, 10, 'anjanette', 19519);
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('articles_hash', null, colocate_with=>'none');
|
||||
NOTICE: Copying data from local table...
|
||||
NOTICE: copying the data has completed
|
||||
|
@ -143,6 +146,7 @@ SELECT create_distributed_table('bigserial_test', null);
|
|||
|
||||
(1 row)
|
||||
|
||||
RESET citus.shard_replication_factor;
|
||||
CREATE TABLE append_table (text_col text, a int);
|
||||
SELECT create_distributed_table('append_table', 'a', 'append');
|
||||
create_distributed_table
|
||||
|
@ -166,6 +170,7 @@ CALL public.create_range_partitioned_shards('range_table', '{"0","25"}','{"24","
|
|||
INSERT INTO range_table VALUES (0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 50);
|
||||
\set users_table_data_file :abs_srcdir '/data/users_table.data'
|
||||
\set events_table_data_file :abs_srcdir '/data/events_table.data'
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE users_table (user_id int, time timestamp, value_1 int, value_2 int, value_3 float, value_4 bigint);
|
||||
SELECT create_distributed_table('users_table', null, colocate_with=>'none');
|
||||
create_distributed_table
|
||||
|
|
|
@ -384,6 +384,12 @@ SELECT EXISTS(
|
|||
t
|
||||
(1 row)
|
||||
|
||||
-- errors out because shard replication factor > 1
|
||||
SET citus.shard_replication_factor TO 2;
|
||||
CREATE TABLE tenant_4.tbl_3 AS SELECT 1 AS a, 'text' as b;
|
||||
ERROR: could not create single shard table: citus.shard_replication_factor is greater than 1
|
||||
HINT: Consider setting citus.shard_replication_factor to 1 and try again
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
-- verify that we allow creating tenant tables by using CREATE TABLE AS / SELECT INTO commands
|
||||
CREATE TABLE tenant_4.tbl_3 AS SELECT 1 AS a, 'text' as b;
|
||||
NOTICE: Copying data from local table...
|
||||
|
@ -1439,6 +1445,11 @@ SELECT pg_reload_conf();
|
|||
\c - - - :master_port
|
||||
SET search_path TO regular_schema;
|
||||
CREATE TABLE type_sing(a INT);
|
||||
-- errors out because shard_replication_factor = 2
|
||||
SELECT create_distributed_table('type_sing', NULL, colocate_with:='none');
|
||||
ERROR: could not create single shard table: citus.shard_replication_factor is greater than 1
|
||||
HINT: Consider setting citus.shard_replication_factor to 1 and try again
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('type_sing', NULL, colocate_with:='none');
|
||||
create_distributed_table
|
||||
---------------------------------------------------------------------
|
||||
|
|
|
@ -1066,6 +1066,7 @@ SELECT tablename, indexname FROM pg_indexes WHERE schemaname = 'null_dist_key_ud
|
|||
SET search_path TO null_dist_key_udfs;
|
||||
--test isolate_tenant_to_new_shard
|
||||
CREATE TABLE iso_tbl (a INT);
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('iso_tbl', NULL, colocate_with:='none');
|
||||
create_distributed_table
|
||||
---------------------------------------------------------------------
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
setup
|
||||
{
|
||||
SELECT citus_set_coordinator_host('localhost', 57636);
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE SCHEMA tenant1;
|
||||
CREATE TABLE tenant1.table1(id int PRIMARY KEY, name text, col bigint);
|
||||
INSERT INTO tenant1.table1 SELECT i, 'asd', i*1000 FROM generate_series(11, 20) i;
|
||||
|
@ -27,6 +27,7 @@ session "s1"
|
|||
step "s1-begin"
|
||||
{
|
||||
BEGIN;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
}
|
||||
|
||||
step "s1-schema-distribute"
|
||||
|
@ -63,6 +64,7 @@ step "s2-rename-schema"
|
|||
|
||||
step "s2-add-table"
|
||||
{
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE tenant1.table4(id int PRIMARY KEY, name text, col bigint);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
setup
|
||||
{
|
||||
SET citus.enable_schema_based_sharding TO ON;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE SCHEMA tenant_1;
|
||||
CREATE SCHEMA tenant_2;
|
||||
CREATE SCHEMA tenant_3;
|
||||
|
@ -16,7 +17,7 @@ teardown
|
|||
|
||||
session "s1"
|
||||
|
||||
step "s1-begin" { BEGIN; }
|
||||
step "s1-begin" { BEGIN; SET citus.shard_replication_factor TO 1;}
|
||||
step "s1-tenant-1-create-table-1" { CREATE TABLE tenant_1.tbl_1 (a int); }
|
||||
step "s1-tenant-4-create-table-1" { CREATE TABLE tenant_4.tbl_1 (a int); }
|
||||
step "s1-tenant-2-create-table-1" { CREATE TABLE tenant_2.tbl_1 (a int); }
|
||||
|
@ -24,7 +25,7 @@ step "s1-commit" { COMMIT; }
|
|||
|
||||
session "s2"
|
||||
|
||||
step "s2-begin" { BEGIN; }
|
||||
step "s2-begin" { BEGIN; SET citus.shard_replication_factor TO 1;}
|
||||
step "s2-tenant-1-create-table-2" { CREATE TABLE tenant_1.tbl_2 (a int); }
|
||||
step "s2-tenant-4-create-table-2" { CREATE TABLE tenant_4.tbl_2 (a int); }
|
||||
step "s2-tenant-1-verify-colocation" { SELECT COUNT(DISTINCT(colocationid))=1 FROM pg_dist_partition WHERE logicalrelid::text LIKE 'tenant_1.%'; }
|
||||
|
|
|
@ -316,6 +316,7 @@ SELECT tenant_attribute, query_count_in_this_period FROM citus_stat_tenants ORDE
|
|||
-- single shard distributed table, which is not part of a tenant schema
|
||||
SELECT citus_stat_tenants_reset();
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE dist_tbl_text_single_shard(a text, b int);
|
||||
select create_distributed_table('dist_tbl_text_single_shard', NULL);
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ SET search_path TO insert_select_single_shard_table;
|
|||
|
||||
SET citus.next_shard_id TO 1820000;
|
||||
SET citus.shard_count TO 32;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
SET client_min_messages TO NOTICE;
|
||||
|
||||
|
|
|
@ -595,6 +595,7 @@ SELECT * FROM multi_extension.print_extension_changes();
|
|||
ALTER EXTENSION citus UPDATE TO '12.0-1';
|
||||
|
||||
CREATE TABLE null_shard_key (x int, y int);
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('null_shard_key', null);
|
||||
|
||||
-- Show that we cannot downgrade to 11.3-1 becuase the cluster has a
|
||||
|
|
|
@ -56,7 +56,6 @@ set citus.shard_count to 8;
|
|||
set citus.shard_replication_factor to 1;
|
||||
SELECT create_distributed_table('mx_test_table', 'col_1');
|
||||
reset citus.shard_count;
|
||||
reset citus.shard_replication_factor;
|
||||
|
||||
-- Set the replication model of the test table to streaming replication so that it is
|
||||
-- considered as an MX table
|
||||
|
@ -67,6 +66,8 @@ CREATE TABLE single_shard_tbl(a int);
|
|||
SELECT create_distributed_table('single_shard_tbl', null);
|
||||
INSERT INTO single_shard_tbl VALUES (1);
|
||||
|
||||
reset citus.shard_replication_factor;
|
||||
|
||||
-- Show that the created MX table is and its sequences are included in the activate node snapshot
|
||||
SELECT unnest(activate_node_snapshot()) order by 1;
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ SET search_path TO query_single_shard_table;
|
|||
|
||||
SET citus.next_shard_id TO 1620000;
|
||||
SET citus.shard_count TO 32;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
|
||||
SET client_min_messages TO NOTICE;
|
||||
|
||||
|
@ -24,6 +25,8 @@ CREATE TABLE nullkey_c3_t1(a int, b int);
|
|||
SELECT create_distributed_table('nullkey_c3_t1', null, colocate_with=>'none');
|
||||
INSERT INTO nullkey_c3_t1 SELECT i, i FROM generate_series(1, 8) i;
|
||||
|
||||
RESET citus.shard_replication_factor;
|
||||
|
||||
CREATE TABLE reference_table(a int, b int);
|
||||
SELECT create_reference_table('reference_table');
|
||||
INSERT INTO reference_table SELECT i, i FROM generate_series(0, 5) i;
|
||||
|
@ -53,6 +56,7 @@ INSERT INTO articles_hash VALUES ( 4, 4, 'altdorfer', 14551),( 5, 5, 'aruru',
|
|||
(42, 2, 'ausable', 15885),(43, 3, 'affixal', 12723),
|
||||
(49, 9, 'anyone', 2681),(50, 10, 'anjanette', 19519);
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('articles_hash', null, colocate_with=>'none');
|
||||
|
||||
CREATE TABLE raw_events_first (user_id int, time timestamp, value_1 int, value_2 int, value_3 float, value_4 bigint, UNIQUE(user_id, value_1));
|
||||
|
@ -80,6 +84,8 @@ SELECT create_reference_table('modify_fast_path_reference');
|
|||
CREATE TABLE bigserial_test (x int, y int, z bigserial);
|
||||
SELECT create_distributed_table('bigserial_test', null);
|
||||
|
||||
RESET citus.shard_replication_factor;
|
||||
|
||||
CREATE TABLE append_table (text_col text, a int);
|
||||
SELECT create_distributed_table('append_table', 'a', 'append');
|
||||
SELECT master_create_empty_shard('append_table') AS shardid1 \gset
|
||||
|
@ -112,6 +118,7 @@ INSERT INTO range_table VALUES (0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (
|
|||
\set users_table_data_file :abs_srcdir '/data/users_table.data'
|
||||
\set events_table_data_file :abs_srcdir '/data/events_table.data'
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
CREATE TABLE users_table (user_id int, time timestamp, value_1 int, value_2 int, value_3 float, value_4 bigint);
|
||||
SELECT create_distributed_table('users_table', null, colocate_with=>'none');
|
||||
\set client_side_copy_command '\\copy users_table FROM ' :'users_table_data_file' ' WITH CSV;'
|
||||
|
|
|
@ -273,6 +273,10 @@ SELECT EXISTS(
|
|||
inhparent = 'tenant_4.parent_attach_test'::regclass
|
||||
) AS is_partition;
|
||||
|
||||
-- errors out because shard replication factor > 1
|
||||
SET citus.shard_replication_factor TO 2;
|
||||
CREATE TABLE tenant_4.tbl_3 AS SELECT 1 AS a, 'text' as b;
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
-- verify that we allow creating tenant tables by using CREATE TABLE AS / SELECT INTO commands
|
||||
CREATE TABLE tenant_4.tbl_3 AS SELECT 1 AS a, 'text' as b;
|
||||
CREATE TEMP TABLE IF NOT EXISTS tenant_4.tbl_4 AS SELECT 1 as a, 'text' as b;
|
||||
|
@ -974,6 +978,11 @@ SELECT pg_reload_conf();
|
|||
SET search_path TO regular_schema;
|
||||
|
||||
CREATE TABLE type_sing(a INT);
|
||||
|
||||
-- errors out because shard_replication_factor = 2
|
||||
SELECT create_distributed_table('type_sing', NULL, colocate_with:='none');
|
||||
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('type_sing', NULL, colocate_with:='none');
|
||||
|
||||
SET citus.enable_schema_based_sharding TO ON;
|
||||
|
|
|
@ -508,6 +508,7 @@ SET search_path TO null_dist_key_udfs;
|
|||
|
||||
--test isolate_tenant_to_new_shard
|
||||
CREATE TABLE iso_tbl (a INT);
|
||||
SET citus.shard_replication_factor TO 1;
|
||||
SELECT create_distributed_table('iso_tbl', NULL, colocate_with:='none');
|
||||
SELECT isolate_tenant_to_new_shard('iso_tbl', 5);
|
||||
|
||||
|
|
Loading…
Reference in New Issue