Force synchronous commit to be enabled for all test_decoding tests.

Without that the tests fail when forced to be run against a cluster
with synchronous_commit = off (as the WAL might not yet be flushed to
disk by the point logical decoding gets called, and thus the expected
output breaks). Most tests already do that, add it to a few newer tests.

Author: Andres Freund
pull/34/head
Andres Freund 7 years ago
parent f82d4d666f
commit ef493055b6
  1. 2
      contrib/test_decoding/expected/truncate.out
  2. 2
      contrib/test_decoding/specs/oldest_xmin.spec
  3. 2
      contrib/test_decoding/specs/snapshot_transfer.spec
  4. 3
      contrib/test_decoding/sql/truncate.sql

@ -1,3 +1,5 @@
-- predictability
SET synchronous_commit = on;
SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
?column?
----------

@ -17,6 +17,7 @@ teardown
}
session "s0"
setup { SET synchronous_commit=on; }
step "s0_begin" { BEGIN; }
step "s0_getxid" { SELECT txid_current() IS NULL; }
step "s0_alter" { ALTER TYPE basket DROP ATTRIBUTE mangos; }
@ -26,6 +27,7 @@ step "s0_vacuum" { VACUUM pg_attribute; }
step "s0_get_changes" { SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1'); }
session "s1"
setup { SET synchronous_commit=on; }
step "s1_begin" { BEGIN; }
step "s1_insert" { INSERT INTO harvest VALUES ((1, 2, 3)); }
step "s1_commit" { COMMIT; }

@ -17,6 +17,7 @@ teardown
}
session "s0"
setup { SET synchronous_commit=on; }
step "s0_begin" { BEGIN; }
step "s0_begin_sub0" { SAVEPOINT s0; }
step "s0_log_assignment" { SELECT txid_current() IS NULL; }
@ -30,6 +31,7 @@ step "s0_commit" { COMMIT; }
step "s0_get_changes" { SELECT data FROM pg_logical_slot_get_changes('isolation_slot', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1'); }
session "s1"
setup { SET synchronous_commit=on; }
step "s1_produce_new_snap" { ALTER TABLE harvest ADD COLUMN mangos int; }
# start top-level without base snap, get base snap in subxact, then create new

@ -1,3 +1,6 @@
-- predictability
SET synchronous_commit = on;
SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
CREATE TABLE tab1 (id serial unique, data int);

Loading…
Cancel
Save