v20231128-0005-subxact-alter-rollback-test.patch
text/x-patch
Filename: v20231128-0005-subxact-alter-rollback-test.patch
Type: text/x-patch
Part: 4
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch v20231128-0005
Subject: subxact alter + rollback test
| File | + | − |
|---|---|---|
| src/test/subscription/t/034_sequences.pl | 23 | 0 |
From 2b63c1a2d77a1467d97bd7292a5f6eb81027efa1 Mon Sep 17 00:00:00 2001
From: Tomas Vondra <tomas@2ndquadrant.com>
Date: Tue, 28 Nov 2023 21:11:21 +0100
Subject: [PATCH v20231128 5/8] subxact alter + rollback test
---
src/test/subscription/t/034_sequences.pl | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/src/test/subscription/t/034_sequences.pl b/src/test/subscription/t/034_sequences.pl
index 1744acad21d..d4290c1c69b 100644
--- a/src/test/subscription/t/034_sequences.pl
+++ b/src/test/subscription/t/034_sequences.pl
@@ -204,4 +204,27 @@ is( $result, '1329|0|t',
'advance sequence in a subtransaction');
+# alter the sequence twice in the same transaction
+$node_publisher->safe_psql(
+ 'postgres', qq(
+ BEGIN;
+ ALTER SEQUENCE s RESTART 1000;
+ SAVEPOINT s1;
+ ALTER SEQUENCE s RESTART 2000;
+ ROLLBACK TO s1;
+ INSERT INTO seq_test SELECT nextval('s') FROM generate_series(1,40);
+ COMMIT;
+));
+
+$node_publisher->wait_for_catchup('seq_sub');
+
+# Check the data on subscriber
+$result = $node_subscriber->safe_psql(
+ 'postgres', qq(
+ SELECT * FROM s;
+));
+
+is( $result, '1098|0|t',
+ 'alter sequence twice in a subtransaction');
+
done_testing();
--
2.41.0