mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-08-29 02:37:19 +02:00
Commit 0da92dc530
improved the logical decoding infrastructure to handle
sequences, and did various changes to related parts (WAL logging etc.).
But it did not include any implementation of the new callbacks added to
OutputPluginCallbacks.
This extends test_decoding with two callbacks to decode sequences. The
decoding of sequences may be disabled using 'include-sequences', a new
option of the output plugin.
Author: Tomas Vondra, Cary Huang
Reviewed-by: Peter Eisentraut, Hannu Krosing, Andres Freund
Discussion: https://postgr.es/m/d045f3c2-6cfb-06d3-5540-e63c320df8bc@enterprisedb.com
Discussion: https://postgr.es/m/1710ed7e13b.cd7177461430746.3372264562543607781@highgo.ca
67 lines
2.6 KiB
Plaintext
67 lines
2.6 KiB
Plaintext
Parsed test spec with 3 sessions
|
|
|
|
starting permutation: s2b s2txid s1init s3b s3txid s2alter s2c s2b s2txid s3c s2c s1insert s1checkpoint s1start s1insert s1alter s1insert s1start
|
|
step s2b: BEGIN;
|
|
step s2txid: SELECT pg_current_xact_id() IS NULL;
|
|
?column?
|
|
--------
|
|
f
|
|
(1 row)
|
|
|
|
step s1init: SELECT 'init' FROM pg_create_logical_replication_slot('isolation_slot', 'test_decoding'); <waiting ...>
|
|
step s3b: BEGIN;
|
|
step s3txid: SELECT pg_current_xact_id() IS NULL;
|
|
?column?
|
|
--------
|
|
f
|
|
(1 row)
|
|
|
|
step s2alter: ALTER TABLE do_write ADD COLUMN addedbys2 int;
|
|
step s2c: COMMIT;
|
|
step s2b: BEGIN;
|
|
step s2txid: SELECT pg_current_xact_id() IS NULL;
|
|
?column?
|
|
--------
|
|
f
|
|
(1 row)
|
|
|
|
step s3c: COMMIT;
|
|
step s1init: <... completed>
|
|
?column?
|
|
--------
|
|
init
|
|
(1 row)
|
|
|
|
step s2c: COMMIT;
|
|
step s1insert: INSERT INTO do_write DEFAULT VALUES;
|
|
step s1checkpoint: CHECKPOINT;
|
|
step s1start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false', 'include-sequences', 'false');
|
|
data
|
|
--------------------------------------------------------------------
|
|
BEGIN
|
|
table public.do_write: INSERT: id[integer]:1 addedbys2[integer]:null
|
|
COMMIT
|
|
(3 rows)
|
|
|
|
step s1insert: INSERT INTO do_write DEFAULT VALUES;
|
|
step s1alter: ALTER TABLE do_write ADD COLUMN addedbys1 int;
|
|
step s1insert: INSERT INTO do_write DEFAULT VALUES;
|
|
step s1start: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', 'false', 'include-sequences', 'false');
|
|
data
|
|
--------------------------------------------------------------------------------------------
|
|
BEGIN
|
|
table public.do_write: INSERT: id[integer]:2 addedbys2[integer]:null
|
|
COMMIT
|
|
BEGIN
|
|
COMMIT
|
|
BEGIN
|
|
table public.do_write: INSERT: id[integer]:3 addedbys2[integer]:null addedbys1[integer]:null
|
|
COMMIT
|
|
(8 rows)
|
|
|
|
?column?
|
|
--------
|
|
stop
|
|
(1 row)
|
|
|