ALTER SEQUENCE pg_catalog.pg_dist_shardid_seq RESTART 1660000; CREATE TABLE partitioning_test(id int, time date) PARTITION BY RANGE (time); ERROR: syntax error at or near "PARTITION" LINE 1: CREATE TABLE partitioning_test(id int, time date) PARTITION ... ^ -- create its partitions CREATE TABLE partitioning_test_2009 PARTITION OF partitioning_test FOR VALUES FROM ('2009-01-01') TO ('2010-01-01'); ERROR: syntax error at or near "PARTITION" LINE 1: CREATE TABLE partitioning_test_2009 PARTITION OF partitionin... ^ CREATE TABLE partitioning_test_2010 PARTITION OF partitioning_test FOR VALUES FROM ('2010-01-01') TO ('2011-01-01'); ERROR: syntax error at or near "PARTITION" LINE 1: CREATE TABLE partitioning_test_2010 PARTITION OF partitionin... ^ -- load some data and distribute tables INSERT INTO partitioning_test VALUES (1, '2009-06-06'); ERROR: relation "partitioning_test" does not exist LINE 1: INSERT INTO partitioning_test VALUES (1, '2009-06-06'); ^ INSERT INTO partitioning_test VALUES (2, '2010-07-07'); ERROR: relation "partitioning_test" does not exist LINE 1: INSERT INTO partitioning_test VALUES (2, '2010-07-07'); ^ INSERT INTO partitioning_test_2009 VALUES (3, '2009-09-09'); ERROR: relation "partitioning_test_2009" does not exist LINE 1: INSERT INTO partitioning_test_2009 VALUES (3, '2009-09-09'); ^ INSERT INTO partitioning_test_2010 VALUES (4, '2010-03-03'); ERROR: relation "partitioning_test_2010" does not exist LINE 1: INSERT INTO partitioning_test_2010 VALUES (4, '2010-03-03'); ^ SET citus.shard_count TO 4; SET citus.shard_replication_factor TO 1; -- this should error out given that parent of the partition is not distributed SELECT create_distributed_table('partitioning_test_2010', 'id'); ERROR: relation "partitioning_test_2010" does not exist LINE 1: SELECT create_distributed_table('partitioning_test_2010', 'i... ^ -- this should suceed SELECT create_distributed_table('partitioning_test', 'id'); ERROR: relation "partitioning_test" does not exist LINE 1: SELECT create_distributed_table('partitioning_test', 'id'); ^ -- check the data SELECT * FROM partitioning_test ORDER BY 1; ERROR: relation "partitioning_test" does not exist LINE 1: SELECT * FROM partitioning_test ORDER BY 1; ^ -- check the metadata SELECT * FROM pg_dist_partition WHERE logicalrelid IN ('partitioning_test', 'partitioning_test_2009', 'partitioning_test_2010') ORDER BY 1; ERROR: relation "partitioning_test" does not exist LINE 6: logicalrelid IN ('partitioning_test', 'partitioning_test_20... ^ SELECT logicalrelid, count(*) FROM pg_dist_shard WHERE logicalrelid IN ('partitioning_test', 'partitioning_test_2009', 'partitioning_test_2010') GROUP BY logicalrelid ORDER BY 1,2; ERROR: relation "partitioning_test" does not exist LINE 4: WHERE logicalrelid IN ('partitioning_test', 'partitioning_t... ^ SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid IN ('partitioning_test', 'partitioning_test_2009', 'partitioning_test_2010') ) GROUP BY nodename, nodeport ORDER BY 1,2,3; ERROR: relation "partitioning_test" does not exist LINE 6: ...shardid FROM pg_dist_shard WHERE logicalrelid IN ('partition... ^ -- dropping the parent should CASCADE to the children as well DROP TABLE partitioning_test; ERROR: table "partitioning_test" does not exist \d+ partitioning_test*