Doc: fix column list vs. replica identity rules.
authorAmit Kapila <[email protected]>
Fri, 2 Sep 2022 11:14:52 +0000 (16:44 +0530)
committerAmit Kapila <[email protected]>
Fri, 2 Sep 2022 11:14:52 +0000 (16:44 +0530)
It was not strictly correct to say that a column list must always include
replica identity columns because that is true for only updates and
deletes.

Author: Peter Smith
Reviwed-by: Vignesh C, Amit Kapila
Backpatch-through: 15, where it was introduced
Discussion: https://postgr.es/m/CAHut+PvOuc9=_4TbASc5=VUqh16UWtFO3GzcKQK_5m1hrW3vqg@mail.gmail.com

doc/src/sgml/ref/create_publication.sgml

index 5790d762705232830e36943c55de4a127e610acc..b0d59ef47d2b51d4d68184f9351cc215d9c5cc87 100644 (file)
@@ -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>
@@ -252,6 +252,13 @@ CREATE PUBLICATION <replaceable class="parameter">name</replaceable>
    disallowed on those tables.
   </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. There are no column list restrictions if the
+   publication publishes only <command>INSERT</command> operations.
+  </para>
+
   <para>
    A row filter expression (i.e., the <literal>WHERE</literal> clause) must contain only
    columns that are covered by the <literal>REPLICA IDENTITY</literal>, in