From e3138cd56a9081edb2934aa56a6173a6d072d43f Mon Sep 17 00:00:00 2001 From: Gonzalo Riestra Date: Fri, 8 Mar 2019 08:43:22 +0100 Subject: [PATCH] make enable/disable trigger idempotent --- scripts-available/CDB_GhostTables.sql | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts-available/CDB_GhostTables.sql b/scripts-available/CDB_GhostTables.sql index 2e2ddeb..c1d916e 100644 --- a/scripts-available/CDB_GhostTables.sql +++ b/scripts-available/CDB_GhostTables.sql @@ -91,9 +91,10 @@ CREATE OR REPLACE FUNCTION CDB_EnableGhostTablesTrigger() RETURNS void AS $$ BEGIN + DROP EVENT TRIGGER IF EXISTS link_ghost_tables; CREATE EVENT TRIGGER link_ghost_tables ON ddl_command_end - WHEN TAG IN ('CREATE TABLE', 'SELECT INTO', 'DROP TABLE', 'ALTER TABLE', 'CREATE TRIGGER', 'DROP TRIGGER', 'CREATE VIEW', 'DROP VIEW', 'ALTER VIEW') + WHEN TAG IN ('CREATE TABLE', 'SELECT INTO', 'DROP TABLE', 'ALTER TABLE', 'CREATE TRIGGER', 'DROP TRIGGER') EXECUTE PROCEDURE CDB_SaveDDLTransaction(); END; $$ LANGUAGE plpgsql VOLATILE PARALLEL UNSAFE; @@ -103,6 +104,6 @@ CREATE OR REPLACE FUNCTION CDB_DisableGhostTablesTrigger() RETURNS void AS $$ BEGIN - DROP EVENT TRIGGER link_ghost_tables; + DROP EVENT TRIGGER IF EXISTS link_ghost_tables; END; $$ LANGUAGE plpgsql VOLATILE PARALLEL UNSAFE;