Parsed test spec with 2 sessions starting permutation: s1-load-cache s1-insert s1-begin s1-select s2-begin s2-move-placement s1-update s2-commit s1-commit s2-print-content s2-print-placements step s1-load-cache: TRUNCATE test_move_placement; step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 1 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-update: UPDATE test_move_placement SET y = 5 WHERE x = 5; step s2-commit: COMMIT; step s1-update: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 5 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-load-cache s1-insert s1-begin s1-select s2-begin s2-move-placement s1-delete s2-commit s1-commit s2-print-content s2-print-placements step s1-load-cache: TRUNCATE test_move_placement; step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 1 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-delete: DELETE FROM test_move_placement WHERE x = 5; step s2-commit: COMMIT; step s1-delete: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-load-cache s1-begin s1-select s2-begin s2-move-placement s1-insert s2-commit s1-commit s2-print-content s2-print-placements step s1-load-cache: TRUNCATE test_move_placement; step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s2-commit: COMMIT; step s1-insert: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 10 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-load-cache s1-begin s1-select s2-begin s2-move-placement s1-copy s2-commit s1-commit s2-print-content s2-print-placements step s1-load-cache: TRUNCATE test_move_placement; step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-copy: COPY test_move_placement FROM PROGRAM 'echo "1,1\n2,2\n3,3\n4,4\n5,5"' WITH CSV; step s2-commit: COMMIT; step s1-copy: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 5 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-load-cache s1-begin s1-select s2-begin s2-move-placement s1-ddl s2-commit s1-commit s2-print-index-count s2-print-placements step s1-load-cache: TRUNCATE test_move_placement; step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-ddl: CREATE INDEX test_move_placement_index ON test_move_placement(x); step s2-commit: COMMIT; step s1-ddl: <... completed> step s1-commit: COMMIT; step s2-print-index-count: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select count(*) from pg_indexes WHERE tablename = ''%s''') ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 1 57637|t | 1 57637|t | 1 57637|t | 1 57637|t | 1 57638|t | 1 57638|t | 1 57638|t | 1 (8 rows) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-insert s1-begin s1-select s2-begin s2-move-placement s1-update s2-commit s1-commit s2-print-content s2-print-placements step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 1 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-update: UPDATE test_move_placement SET y = 5 WHERE x = 5; step s2-commit: COMMIT; step s1-update: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 5 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-insert s1-begin s1-select s2-begin s2-move-placement s1-delete s2-commit s1-commit s2-print-content s2-print-placements step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 1 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-delete: DELETE FROM test_move_placement WHERE x = 5; step s2-commit: COMMIT; step s1-delete: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-begin s1-select s2-begin s2-move-placement s1-insert s2-commit s1-commit s2-print-content s2-print-placements step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-insert: INSERT INTO test_move_placement VALUES (5, 10); step s2-commit: COMMIT; step s1-insert: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 10 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-begin s1-select s2-begin s2-move-placement s1-copy s2-commit s1-commit s2-print-content s2-print-placements step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-copy: COPY test_move_placement FROM PROGRAM 'echo "1,1\n2,2\n3,3\n4,4\n5,5"' WITH CSV; step s2-commit: COMMIT; step s1-copy: <... completed> step s1-commit: COMMIT; step s2-print-content: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select y from %s WHERE x = 5') WHERE shardid IN (SELECT * FROM selected_shard) ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 5 (1 row) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows) starting permutation: s1-begin s1-select s2-begin s2-move-placement s1-ddl s2-commit s1-commit s2-print-index-count s2-print-placements step s1-begin: BEGIN; -- the tests are written with the logic where single shard SELECTs -- do not to open transaction blocks SET citus.select_opens_transaction_block TO false; step s1-select: SELECT count(*) FROM test_move_placement WHERE x = 5; count --------------------------------------------------------------------- 0 (1 row) step s2-begin: BEGIN; step s2-move-placement: SELECT master_move_shard_placement((SELECT * FROM selected_shard), 'localhost', 57638, 'localhost', 57637, 'force_logical'); master_move_shard_placement --------------------------------------------------------------------- (1 row) step s1-ddl: CREATE INDEX test_move_placement_index ON test_move_placement(x); step s2-commit: COMMIT; step s1-ddl: <... completed> step s1-commit: COMMIT; step s2-print-index-count: SELECT nodeport, success, result FROM run_command_on_placements('test_move_placement', 'select count(*) from pg_indexes WHERE tablename = ''%s''') ORDER BY nodeport; nodeport|success|result --------------------------------------------------------------------- 57637|t | 1 57637|t | 1 57637|t | 1 57637|t | 1 57637|t | 1 57638|t | 1 57638|t | 1 57638|t | 1 (8 rows) step s2-print-placements: SELECT nodename, nodeport, count(*) FROM pg_dist_shard_placement WHERE shardid IN (SELECT shardid FROM pg_dist_shard WHERE logicalrelid = 'test_move_placement'::regclass) AND shardstate = 1 GROUP BY nodename, nodeport; nodename |nodeport|count --------------------------------------------------------------------- localhost| 57637| 5 localhost| 57638| 3 (2 rows)