diff options
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/test_decoding/expected/messages.out | 26 | ||||
-rw-r--r-- | contrib/test_decoding/expected/replorigin.out | 6 | ||||
-rw-r--r-- | contrib/test_decoding/sql/messages.sql | 13 | ||||
-rw-r--r-- | contrib/test_decoding/sql/replorigin.sql | 2 |
4 files changed, 42 insertions, 5 deletions
diff --git a/contrib/test_decoding/expected/messages.out b/contrib/test_decoding/expected/messages.out index 70130e93789..c75d40190b6 100644 --- a/contrib/test_decoding/expected/messages.out +++ b/contrib/test_decoding/expected/messages.out @@ -1,6 +1,5 @@ -- predictability SET synchronous_commit = on; -SET client_encoding = 'utf8'; SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding'); ?column? ---------- @@ -71,9 +70,30 @@ SELECT data FROM pg_logical_slot_get_changes('regression_slot', NULL, NULL, 'for message: transactional: 1 prefix: test, sz: 11 content:czechtastic (7 rows) -SELECT 'init' FROM pg_drop_replication_slot('regression_slot'); +-- test db filtering +\set prevdb :DBNAME +\c template1 +SELECT 'otherdb1' FROM pg_logical_emit_message(false, 'test', 'otherdb1'); ?column? ---------- - init + otherdb1 +(1 row) + +SELECT 'otherdb2' FROM pg_logical_emit_message(true, 'test', 'otherdb2'); + ?column? +---------- + otherdb2 +(1 row) + +\c :prevdb +SELECT data FROM pg_logical_slot_get_changes('regression_slot', NULL, NULL, 'force-binary', '0', 'skip-empty-xacts', '1'); + data +------ +(0 rows) + +SELECT 'cleanup' FROM pg_drop_replication_slot('regression_slot'); + ?column? +---------- + cleanup (1 row) diff --git a/contrib/test_decoding/expected/replorigin.out b/contrib/test_decoding/expected/replorigin.out index c0f512579ca..76d4ea986db 100644 --- a/contrib/test_decoding/expected/replorigin.out +++ b/contrib/test_decoding/expected/replorigin.out @@ -59,6 +59,12 @@ SELECT pg_replication_origin_session_setup('test_decoding: regression_slot'); -- ensure we prevent duplicate setup SELECT pg_replication_origin_session_setup('test_decoding: regression_slot'); ERROR: cannot setup replication origin when one is already setup +SELECT '' FROM pg_logical_emit_message(false, 'test', 'this message will not be decoded'); + ?column? +---------- + +(1 row) + BEGIN; -- setup transaction origin SELECT pg_replication_origin_xact_setup('0/aabbccdd', '2013-01-01 00:00'); diff --git a/contrib/test_decoding/sql/messages.sql b/contrib/test_decoding/sql/messages.sql index 4aedb045601..cf3f7738e57 100644 --- a/contrib/test_decoding/sql/messages.sql +++ b/contrib/test_decoding/sql/messages.sql @@ -1,6 +1,5 @@ -- predictability SET synchronous_commit = on; -SET client_encoding = 'utf8'; SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding'); @@ -22,4 +21,14 @@ SELECT 'ignorethis' FROM pg_logical_emit_message(true, 'test', 'czechtastic'); SELECT data FROM pg_logical_slot_get_changes('regression_slot', NULL, NULL, 'force-binary', '0', 'skip-empty-xacts', '1'); -SELECT 'init' FROM pg_drop_replication_slot('regression_slot'); +-- test db filtering +\set prevdb :DBNAME +\c template1 + +SELECT 'otherdb1' FROM pg_logical_emit_message(false, 'test', 'otherdb1'); +SELECT 'otherdb2' FROM pg_logical_emit_message(true, 'test', 'otherdb2'); + +\c :prevdb +SELECT data FROM pg_logical_slot_get_changes('regression_slot', NULL, NULL, 'force-binary', '0', 'skip-empty-xacts', '1'); + +SELECT 'cleanup' FROM pg_drop_replication_slot('regression_slot'); diff --git a/contrib/test_decoding/sql/replorigin.sql b/contrib/test_decoding/sql/replorigin.sql index e12404e106e..7870f0ea321 100644 --- a/contrib/test_decoding/sql/replorigin.sql +++ b/contrib/test_decoding/sql/replorigin.sql @@ -31,6 +31,8 @@ SELECT pg_replication_origin_session_setup('test_decoding: regression_slot'); -- ensure we prevent duplicate setup SELECT pg_replication_origin_session_setup('test_decoding: regression_slot'); +SELECT '' FROM pg_logical_emit_message(false, 'test', 'this message will not be decoded'); + BEGIN; -- setup transaction origin SELECT pg_replication_origin_xact_setup('0/aabbccdd', '2013-01-01 00:00'); |