Doc: Clarify the behavior of triggers/rules in a logical subscriber.
authorAmit Kapila
Thu, 22 Jun 2023 07:07:19 +0000 (12:37 +0530)
committerAmit Kapila
Thu, 22 Jun 2023 07:07:19 +0000 (12:37 +0530)
By default, triggers and rules do not fire on a logical replication
subscriber based on the "session_replication_role" GUC being set to
"replica". However, the docs in the logical replication section assumed
that the reader understood how this GUC worked. This modifies the docs to
be more explicit and links back to the GUC itself.

Author: Jonathan Katz, Peter Smith
Reviewed-by: Vignesh C, Euler Taveira
Backpatch-through: 11
Discussion: https://postgr.es/m/5bb2c9a2-499f-e1a2-6e33-5ce96b35cc4a@postgresql.org

doc/src/sgml/logical-replication.sgml

index 59cf92e6a9116ec011e0f4bffa00d5db94e9307e..aeab39626d65b7f43621493ae223ba87842f23fb 100644 (file)
@@ -1654,9 +1654,13 @@ CONTEXT:  processing remote data for replication origin "pg_16395" during "INSER
 
   
    The apply process on the subscriber database always runs with
-   session_replication_role set
-   to replica, which produces the usual effects on triggers
-   and constraints.
+   session_replication_role
+   set to replica. This means that, by default,
+   triggers and rules will not fire on a subscriber. Users can optionally choose to
+   enable triggers and rules on a table using the
+   ALTER TABLE command
+   and the ENABLE TRIGGER and ENABLE RULE
+   clauses.