From 7750fefdb2b81e0ee09c523d0a21cbd37edaf4b2 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Mon, 25 Sep 2023 12:41:49 +0200 Subject: Add GUC for temporarily disabling event triggers In order to troubleshoot misbehaving or buggy event triggers, the documented advice is to enter single-user mode. In an attempt to reduce the number of situations where single-user mode is required (or even recommended) for non-extraordinary maintenance, this GUC allows to temporarily suspend event triggers. This was originally extracted from a larger patchset which aimed at supporting event triggers on login events. Reviewed-by: Ted Yu Reviewed-by: Mikhail Gribkov Reviewed-by: Justin Pryzby Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/9140106E-F9BF-4D85-8FC8-F2D3C094A6D9@yesql.se Discussion: https://postgr.es/m/0d46d29f-4558-3af9-9c85-7774e14a7709@postgrespro.ru --- src/backend/utils/misc/guc_tables.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/backend/utils/misc/guc_tables.c') diff --git a/src/backend/utils/misc/guc_tables.c b/src/backend/utils/misc/guc_tables.c index bdb26e2b77d..16ec6c5ef02 100644 --- a/src/backend/utils/misc/guc_tables.c +++ b/src/backend/utils/misc/guc_tables.c @@ -37,6 +37,7 @@ #include "catalog/namespace.h" #include "catalog/storage.h" #include "commands/async.h" +#include "commands/event_trigger.h" #include "commands/tablespace.h" #include "commands/trigger.h" #include "commands/user.h" @@ -2000,6 +2001,16 @@ struct config_bool ConfigureNamesBool[] = NULL, NULL, NULL }, + { + {"event_triggers", PGC_SUSET, CLIENT_CONN_STATEMENT, + gettext_noop("Enables event triggers."), + gettext_noop("When enabled, event triggers will fire for all applicable statements."), + }, + &event_triggers, + true, + NULL, NULL, NULL + }, + /* End-of-list marker */ { {NULL, 0, 0, NULL, NULL}, NULL, false, NULL, NULL, NULL -- cgit v1.2.3