1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-06 19:59:18 +03:00

Rework <warning> box about column list combining in logical replication

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
This commit is contained in:
Alvaro Herrera 2022-12-23 17:49:51 +01:00
parent 5436cb373c
commit d8209d0917
No known key found for this signature in database
GPG Key ID: 1C20ACB9D5C564AE

View 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>
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.
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>
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>