
This reverts a sequence of commits, implementing features related to logical decoding and replication of sequences: - 0da92dc530c9251735fc70b20cd004d9630a1266 - 80901b32913ffa59bf157a4d88284b2b3a7511d9 - b779d7d8fdae088d70da5ed9fcd8205035676df3 - d5ed9da41d96988d905b49bebb273a9b2d6e2915 - a180c2b34de0989269fdb819bff241a249bf5380 - 75b1521dae1ff1fde17fda2e30e591f2e5d64b6a - 2d2232933b02d9396113662e44dca5f120d6830e - 002c9dd97a0c874fd1693a570383e2dd38cd40d5 - 05843b1aa49df2ecc9b97c693b755bd1b6f856a9 The implementation has issues, mostly due to combining transactional and non-transactional behavior of sequences. It's not clear how this could be fixed, but it'll require reworking significant part of the patch. Discussion: https://postgr.es/m/95345a19-d508-63d1-860a-f5c2f41e8d40@enterprisedb.com
91 lines
2.7 KiB
Plaintext
91 lines
2.7 KiB
Plaintext
Parsed test spec with 3 sessions
|
|
|
|
starting permutation: s0init s0start s1begin s1sharepgclass s2begin s2sharepgclass s0w s0start s2commit s1commit
|
|
step s0init: SELECT 'init' FROM pg_create_logical_replication_slot('isolation_slot', 'test_decoding');
|
|
?column?
|
|
--------
|
|
init
|
|
(1 row)
|
|
|
|
step s0start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false');
|
|
data
|
|
----
|
|
(0 rows)
|
|
|
|
step s1begin: BEGIN;
|
|
step s1sharepgclass: SELECT count(*) > 1 FROM (SELECT * FROM pg_class FOR SHARE) s;
|
|
?column?
|
|
--------
|
|
t
|
|
(1 row)
|
|
|
|
step s2begin: BEGIN;
|
|
step s2sharepgclass: SELECT count(*) > 1 FROM (SELECT * FROM pg_class FOR SHARE) s;
|
|
?column?
|
|
--------
|
|
t
|
|
(1 row)
|
|
|
|
step s0w: INSERT INTO do_write DEFAULT VALUES;
|
|
step s0start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false');
|
|
data
|
|
--------------------------------------------
|
|
BEGIN
|
|
table public.do_write: INSERT: id[integer]:1
|
|
COMMIT
|
|
(3 rows)
|
|
|
|
step s2commit: COMMIT;
|
|
step s1commit: COMMIT;
|
|
?column?
|
|
--------
|
|
stop
|
|
(1 row)
|
|
|
|
|
|
starting permutation: s0init s0start s1begin s1keysharepgclass s2begin s2keysharepgclass s0alter s0w s0start s2commit s1commit
|
|
step s0init: SELECT 'init' FROM pg_create_logical_replication_slot('isolation_slot', 'test_decoding');
|
|
?column?
|
|
--------
|
|
init
|
|
(1 row)
|
|
|
|
step s0start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false');
|
|
data
|
|
----
|
|
(0 rows)
|
|
|
|
step s1begin: BEGIN;
|
|
step s1keysharepgclass: SELECT count(*) > 1 FROM (SELECT * FROM pg_class FOR KEY SHARE) s;
|
|
?column?
|
|
--------
|
|
t
|
|
(1 row)
|
|
|
|
step s2begin: BEGIN;
|
|
step s2keysharepgclass: SELECT count(*) > 1 FROM (SELECT * FROM pg_class FOR KEY SHARE) s;
|
|
?column?
|
|
--------
|
|
t
|
|
(1 row)
|
|
|
|
step s0alter: ALTER TABLE do_write ADD column ts timestamptz;
|
|
step s0w: INSERT INTO do_write DEFAULT VALUES;
|
|
step s0start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false');
|
|
data
|
|
------------------------------------------------------------------------------
|
|
BEGIN
|
|
COMMIT
|
|
BEGIN
|
|
table public.do_write: INSERT: id[integer]:1 ts[timestamp with time zone]:null
|
|
COMMIT
|
|
(5 rows)
|
|
|
|
step s2commit: COMMIT;
|
|
step s1commit: COMMIT;
|
|
?column?
|
|
--------
|
|
stop
|
|
(1 row)
|
|
|