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

