Type: | enum |
Défaut: | origin |
Contexte: | superuser |
Redémarrer: | false |
Valeurs: | [origin, replica, local] |
Contrôle l'exécution des triggers et règles relatifs à la réplication pour la session en cours. Seul un superutilisateur peut configurer cette variable. Sa modification résulte en l'annulation de tout plan de requête précédemment mis en cache. Les valeurs possibles sont origin
(la valeur par défaut), replica
et local
.
L'utilisation prévue de ce paramètre est que les systèmes de réplication logique le passent à replica
quand ils répliquent des changements. L'effet sera que les triggers et les règles (quand on n'a pas modifié la configuration par défaut) ne se déclencheront pas sur la réplique. Voir les clauses sql-altertableENABLE TRIGGER
et ENABLE RULE
pour plus d'informations.
En interne, PostgreSQL traite de la même manière les paramètres origin
et local
. Les systèmes de réplication tiers peuvent utiliser ces deux valeurs pour leurs besoins internes, par exemple en utilisant local
pour désigner la session dont les changements ne seront pas répliqués.
Puisque les clés étrangères sont implémentées comme des triggers, passer ce paramètre à replica
désactive aussi toutes les vérifications de clés étrangères, ce qui peut laisser les données dans un état incohérent en cas d'utilisation inappropriée.