v2-0001-Column-List-replica-identity-rules.patch
application/octet-stream
Filename: v2-0001-Column-List-replica-identity-rules.patch
Type: application/octet-stream
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 v2-0001
Subject: Column List replica identity rules.
| File | + | − |
|---|---|---|
| doc/src/sgml/ref/create_publication.sgml | 12 | 2 |
From ffade3916b0ab7b84e11445b706e898a0ca258e6 Mon Sep 17 00:00:00 2001
From: Peter Smith <peter.b.smith@fujitsu.com>
Date: Mon, 22 Aug 2022 16:14:03 +1000
Subject: [PATCH v2] Column List replica identity rules.
It was not strictly correct to say that a column list must always include
replica identity columns.
This patch modifies the CREATE PUBLICATION "Notes" so the column list replica
identity rules are more similar to those documented for row filters.
---
doc/src/sgml/ref/create_publication.sgml | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/doc/src/sgml/ref/create_publication.sgml b/doc/src/sgml/ref/create_publication.sgml
index 5790d76..31f34f1 100644
--- a/doc/src/sgml/ref/create_publication.sgml
+++ b/doc/src/sgml/ref/create_publication.sgml
@@ -90,8 +90,8 @@ CREATE PUBLICATION <replaceable class="parameter">name</replaceable>
<para>
When a column list is specified, only the named columns are replicated.
If no column list is specified, all columns of the table are replicated
- through this publication, including any columns added later. If a column
- list is specified, it must include the replica identity columns.
+ through this publication, including any columns added later. It has no
+ effect on <literal>TRUNCATE</literal> commands.
</para>
<para>
@@ -265,6 +265,16 @@ CREATE PUBLICATION <replaceable class="parameter">name</replaceable>
</para>
<para>
+ Any column list must include the <literal>REPLICA IDENTITY</literal> columns
+ in order for <command>UPDATE</command> or <command>DELETE</command>
+ operations to be published. Furthermore, if the table uses
+ <literal>REPLICA IDENTITY FULL</literal>, specifying a column list is not
+ allowed (it will cause publication errors for <command>UPDATE</command> or
+ <command>DELETE</command> operations). There are no column list restrictions
+ if the publication publishes only <command>INSERT</command> operations.
+ </para>
+
+ <para>
For published partitioned tables, the row filter for each
partition is taken from the published partitioned table if the
publication parameter <literal>publish_via_partition_root</literal> is true,
--
1.8.3.1