From 037ad84600e308c03fb71d21c2550deccb0bc2aa Mon Sep 17 00:00:00 2001 From: Dilip Kumar Date: Thu, 12 Nov 2020 15:00:25 +0530 Subject: [PATCH v3 2/2] Test case to test the interleaved empty transactions --- contrib/test_decoding/expected/concurrent_stream.out | 5 +++-- contrib/test_decoding/specs/concurrent_stream.spec | 6 +++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/contrib/test_decoding/expected/concurrent_stream.out b/contrib/test_decoding/expected/concurrent_stream.out index e731d13..6f8b217 100644 --- a/contrib/test_decoding/expected/concurrent_stream.out +++ b/contrib/test_decoding/expected/concurrent_stream.out @@ -1,11 +1,12 @@ -Parsed test spec with 2 sessions +Parsed test spec with 3 sessions -starting permutation: s0_begin s0_ddl s1_ddl s1_begin s1_toast_insert s1_commit s1_get_stream_changes +starting permutation: s0_begin s0_ddl s1_ddl s1_begin s1_toast_insert s2_ddl s1_commit s1_get_stream_changes step s0_begin: BEGIN; step s0_ddl: CREATE TABLE stream_test1(data text); step s1_ddl: CREATE TABLE stream_test(data text); step s1_begin: BEGIN; step s1_toast_insert: INSERT INTO stream_test SELECT large_val(); +step s2_ddl: CREATE TABLE stream_test2(data text); step s1_commit: COMMIT; step s1_get_stream_changes: SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL,NULL, 'include-xids', '0', 'skip-empty-xacts', '1', 'stream-changes', '1'); data diff --git a/contrib/test_decoding/specs/concurrent_stream.spec b/contrib/test_decoding/specs/concurrent_stream.spec index ad9fde9..f82e4d6 100644 --- a/contrib/test_decoding/specs/concurrent_stream.spec +++ b/contrib/test_decoding/specs/concurrent_stream.spec @@ -23,6 +23,10 @@ setup { SET synchronous_commit=on; } step "s0_begin" { BEGIN; } step "s0_ddl" {CREATE TABLE stream_test1(data text);} +session "s2" +setup { SET synchronous_commit=on; } +step "s2_ddl" {CREATE TABLE stream_test2(data text);} + # The transaction commit for s1_ddl will add the INTERNAL_SNAPSHOT change to # the currently running s0_ddl and we want to test that s0_ddl should not get # streamed when user asked to skip-empty-xacts. @@ -34,4 +38,4 @@ step "s1_toast_insert" {INSERT INTO stream_test SELECT large_val();} step "s1_commit" { COMMIT; } step "s1_get_stream_changes" { SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL,NULL, 'include-xids', '0', 'skip-empty-xacts', '1', 'stream-changes', '1');} -permutation "s0_begin" "s0_ddl" "s1_ddl" "s1_begin" "s1_toast_insert" "s1_commit" "s1_get_stream_changes" +permutation "s0_begin" "s0_ddl" "s1_ddl" "s1_begin" "s1_toast_insert" "s2_ddl" "s1_commit" "s1_get_stream_changes" -- 1.8.3.1