From 6c8c7c8a902bf8d38bd8137d67b6fe4ea14f376d Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Mon, 27 Jan 2014 17:13:49 +0100 Subject: [PATCH 5/5] wal_decoding: Temporarily add logical decoding regression tests to everything --- src/test/regress/expected/end_logical.out | 7 +++++++ src/test/regress/expected/end_logical_1.out | 4 ++++ src/test/regress/expected/init_logical.out | 10 ++++++++++ src/test/regress/expected/init_logical_1.out | 7 +++++++ src/test/regress/parallel_schedule | 4 ++++ src/test/regress/serial_schedule | 2 ++ src/test/regress/sql/end_logical.sql | 2 ++ src/test/regress/sql/init_logical.sql | 4 ++++ 8 files changed, 40 insertions(+) create mode 100644 src/test/regress/expected/end_logical.out create mode 100644 src/test/regress/expected/end_logical_1.out create mode 100644 src/test/regress/expected/init_logical.out create mode 100644 src/test/regress/expected/init_logical_1.out create mode 100644 src/test/regress/sql/end_logical.sql create mode 100644 src/test/regress/sql/init_logical.sql diff --git a/src/test/regress/expected/end_logical.out b/src/test/regress/expected/end_logical.out new file mode 100644 index 0000000..44ad6d2 --- /dev/null +++ b/src/test/regress/expected/end_logical.out @@ -0,0 +1,7 @@ +\copy (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO '/tmp/testresult'; +SELECT pg_drop_replication_slot('regression_slot'); + pg_drop_replication_slot +-------------------------- + +(1 row) + diff --git a/src/test/regress/expected/end_logical_1.out b/src/test/regress/expected/end_logical_1.out new file mode 100644 index 0000000..84b00ac --- /dev/null +++ b/src/test/regress/expected/end_logical_1.out @@ -0,0 +1,4 @@ +\copy (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO '/tmp/testresult'; +ERROR: replication slots can only be used if max_replication_slots > 0 +SELECT pg_drop_replication_slot('regression_slot'); +ERROR: replication slots can only be used if max_replication_slots > 0 diff --git a/src/test/regress/expected/init_logical.out b/src/test/regress/expected/init_logical.out new file mode 100644 index 0000000..98ded04 --- /dev/null +++ b/src/test/regress/expected/init_logical.out @@ -0,0 +1,10 @@ +-- will fail if wal_level < logical, separate expected file +SELECT 'stop' FROM pg_drop_replication_slot('regression_slot'); +ERROR: replication slot "regression_slot" does not exist +SELECT 'init' FROM pg_create_decoding_replication_slot('regression_slot', 'test_decoding'); + ?column? +---------- + init +(1 row) + +COPY (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO STDOUT; diff --git a/src/test/regress/expected/init_logical_1.out b/src/test/regress/expected/init_logical_1.out new file mode 100644 index 0000000..54930e3 --- /dev/null +++ b/src/test/regress/expected/init_logical_1.out @@ -0,0 +1,7 @@ +-- will fail if wal_level < logical, separate expected file +SELECT 'stop' FROM pg_drop_replication_slot('regression_slot'); +ERROR: replication slots can only be used if max_replication_slots > 0 +SELECT 'init' FROM pg_create_decoding_replication_slot('regression_slot', 'test_decoding'); +ERROR: replication slots can only be used if max_replication_slots > 0 +COPY (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO STDOUT; +ERROR: replication slots can only be used if max_replication_slots > 0 diff --git a/src/test/regress/parallel_schedule b/src/test/regress/parallel_schedule index 5758b07..66901d6 100644 --- a/src/test/regress/parallel_schedule +++ b/src/test/regress/parallel_schedule @@ -8,6 +8,8 @@ # run tablespace by itself, and first, because it forces a checkpoint; # we'd prefer not to have checkpoints later in the tests because that # interferes with crash-recovery testing. +test: init_logical + test: tablespace # ---------- @@ -109,3 +111,5 @@ test: plancache limit plpgsql copy2 temp domain rangefuncs prepare without_oid c # run stats by itself because its delay may be insufficient under heavy load test: stats + +test: end_logical diff --git a/src/test/regress/serial_schedule b/src/test/regress/serial_schedule index 78348f5..af9b293 100644 --- a/src/test/regress/serial_schedule +++ b/src/test/regress/serial_schedule @@ -1,5 +1,6 @@ # src/test/regress/serial_schedule # This should probably be in an order similar to parallel_schedule. +test: init_logical test: tablespace test: boolean test: char @@ -142,3 +143,4 @@ test: largeobject test: with test: xml test: stats +test: end_logical diff --git a/src/test/regress/sql/end_logical.sql b/src/test/regress/sql/end_logical.sql new file mode 100644 index 0000000..c730aad --- /dev/null +++ b/src/test/regress/sql/end_logical.sql @@ -0,0 +1,2 @@ +\copy (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO '/tmp/testresult'; +SELECT pg_drop_replication_slot('regression_slot'); diff --git a/src/test/regress/sql/init_logical.sql b/src/test/regress/sql/init_logical.sql new file mode 100644 index 0000000..2a7913f --- /dev/null +++ b/src/test/regress/sql/init_logical.sql @@ -0,0 +1,4 @@ +-- will fail if wal_level < logical, separate expected file +SELECT 'stop' FROM pg_drop_replication_slot('regression_slot'); +SELECT 'init' FROM pg_create_decoding_replication_slot('regression_slot', 'test_decoding'); +COPY (SELECT data FROM pg_decoding_slot_get_changes('regression_slot', 'now', 'include-xids', '0')) TO STDOUT; -- 1.8.5.rc2.dirty