v1-0001-Demonstrate-crash-in-brininsertcleanup-during-log.patch
text/x-diff
Filename: v1-0001-Demonstrate-crash-in-brininsertcleanup-during-log.patch
Type: text/x-diff
Part: 0
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 v1-0001
Subject: Demonstrate crash in brininsertcleanup during logical replication.
| File | + | − |
|---|---|---|
| src/test/subscription/t/013_partition.pl | 3 | 0 |
From 70071453e273e676267a58b6ad31a0886b0fec13 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Tue, 18 Feb 2025 12:18:05 -0500
Subject: [PATCH v1 1/4] Demonstrate crash in brininsertcleanup during logical
replication.
A cross-partition update crashes if the subscriber's table has
a BRIN index. This is easily demonstrated by adding such an
index to 013_partition.pl. I'm not sure if we actually want
to include this in the final patchset, so it's a separate patch
for now.
Bug: #18815
Reported-by: Sergey Belyashov <sergey.belyashov@gmail.com>
Discussion: https://postgr.es/m/18815-2a0407cc7f40b327@postgresql.org
Backpatch-through: TBD
---
src/test/subscription/t/013_partition.pl | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/test/subscription/t/013_partition.pl b/src/test/subscription/t/013_partition.pl
index 14a3beae6e..c1f3ef781b 100644
--- a/src/test/subscription/t/013_partition.pl
+++ b/src/test/subscription/t/013_partition.pl
@@ -49,6 +49,9 @@ $node_publisher->safe_psql('postgres',
$node_subscriber1->safe_psql('postgres',
"CREATE TABLE tab1 (c text, a int PRIMARY KEY, b text) PARTITION BY LIST (a)"
);
+$node_subscriber1->safe_psql('postgres',
+ "CREATE INDEX ON tab1 USING brin (c)"
+);
$node_subscriber1->safe_psql('postgres',
"CREATE TABLE tab1_1 (b text, c text DEFAULT 'sub1_tab1', a int NOT NULL)"
);
--
2.43.5