aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Kapila <akapila@postgresql.org>2021-06-24 09:37:57 +0530
committerAmit Kapila <akapila@postgresql.org>2021-06-24 09:37:57 +0530
commita73bd49c69e16197e8da43bc7cb17a38bd89aeee (patch)
tree47812c1f4aa5c0e1c2fcc55d0bdbdbac63c6b101
parent35e6b3bbf745121bf7a740d57f169b0697abab99 (diff)
downloadpostgresql-a73bd49c69e16197e8da43bc7cb17a38bd89aeee.tar.gz
postgresql-a73bd49c69e16197e8da43bc7cb17a38bd89aeee.zip
Doc: Update caveats in synchronous logical replication.
Reported-by: Simon Riggs Author: Takamichi Osumi Reviewed-by: Amit Kapila Backpatch-through: 9.6 Discussion: https://www.postgresql.org/message-id/20210222222847.tpnb6eg3yiykzpky@alap3.anarazel.de
-rw-r--r--doc/src/sgml/logicaldecoding.sgml16
1 files changed, 11 insertions, 5 deletions
diff --git a/doc/src/sgml/logicaldecoding.sgml b/doc/src/sgml/logicaldecoding.sgml
index 4c2ca12445e..35202a789cf 100644
--- a/doc/src/sgml/logicaldecoding.sgml
+++ b/doc/src/sgml/logicaldecoding.sgml
@@ -754,16 +754,18 @@ OutputPluginWrite(ctx, true);
<para>
In synchronous replication setup, a deadlock can happen, if the transaction
- has locked [user] catalog tables exclusively. This is because logical decoding of
- transactions can lock catalog tables to access them. To avoid this users
- must refrain from taking an exclusive lock on [user] catalog tables. This can
- happen in the following ways:
+ has locked [user] catalog tables exclusively. See
+ <xref linkend="logicaldecoding-capabilities"/> for information on user
+ catalog tables. This is because logical decoding of transactions can lock
+ catalog tables to access them. To avoid this users must refrain from taking
+ an exclusive lock on [user] catalog tables. This can happen in the following
+ ways:
<itemizedlist>
<listitem>
<para>
Issuing an explicit <command>LOCK</command> on <structname>pg_class</structname>
- (or any other catalog table) in a transaction.
+ in a transaction.
</para>
</listitem>
@@ -781,6 +783,10 @@ OutputPluginWrite(ctx, true);
</para>
</listitem>
</itemizedlist>
+
+ Note that these commands that can cause deadlock apply to not only explicitly
+ indicated system catalog tables above but also to any other [user] catalog
+ table.
</para>
</sect2>
</sect1>