]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Rework <warning> box about column list combining in logical replication
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Fri, 23 Dec 2022 16:49:51 +0000 (17:49 +0100)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Fri, 23 Dec 2022 16:49:51 +0000 (17:49 +0100)
After some copy-edit I made in commit 3a06a79cd137, we have a <sect2>
that only contains a warning box.  This doesn't look good.  Rework by
moving the sect2 title to be the warning's title, and put the 'id' to it
as well, so that the external reference continues to work.

Backpatch to 15.

In branch master, I also take the opportunity to add titles to a couple
of other warning boxes elsewhere in the documentation.

Discussion: https://postgr.es/m/20221219164713.ccnlvtkyj6lmshqq@alvherre.pgsql

doc/src/sgml/logical-replication.sgml

index e98538e540018f60cb544a71dd677f5e7e16ce7c..dd0bde23cee16b9448b403b40e37a5962a68b7b6 100644 (file)
@@ -1153,26 +1153,30 @@ test_sub=# SELECT * FROM child ORDER BY a;
    ignoring any column lists.
   </para>
 
-  <sect2 id="logical-replication-col-list-combining">
-   <title>Combining Multiple Column Lists</title>
-
-   <warning>
+   <warning id="logical-replication-col-list-combining">
+    <title>Warning: Combining Column Lists from Multiple Publications</title>
+    <para>
+     There's currently no support for subscriptions comprising several
+     publications where the same table has been published with different
+     column lists.  <xref linkend="sql-createsubscription"/> disallows
+     creating such subscriptions, but it is still possible to get into
+     that situation by adding or altering column lists on the publication
+     side after a subscription has been created.
+    </para>
     <para>
-     It is not supported to have a subscription comprising several publications
-     where the same table has been published with different column lists.
-     This means changing the column lists of the tables being subscribed could
-     cause inconsistency of column lists among publications, in which case
-     the <xref linkend="sql-alterpublication"/> will be successful but later
-     the walsender on the publisher, or the subscriber may throw an error. In
-     this scenario, the user needs to recreate the subscription after adjusting
-     the column list or drop the problematic publication using
-     <literal>ALTER SUBSCRIPTION ... DROP PUBLICATION</literal> and then add it
-     back after adjusting the column list.
+     This means changing the column lists of tables on publications that are
+     already subscribed could lead to errors being thrown on the subscriber
+     side.
+    </para>
+    <para>
+     If a subscription is affected by this problem, the only way to resume
+     replication is to adjust one of the column lists on the publication
+     side so that they all match; and then either recreate the subscription,
+     or use <literal>ALTER SUBSCRIPTION ... DROP PUBLICATION</literal> to
+     remove one of the offending publications and add it again.
     </para>
    </warning>
 
-  </sect2>
-
   <sect2 id="logical-replication-col-list-examples">
    <title>Examples</title>