diff --git a/db_scripts/diff/9249.down b/db_scripts/diff/9249.down new file mode 100644 index 00000000..aea4518d --- /dev/null +++ b/db_scripts/diff/9249.down @@ -0,0 +1,21 @@ +USE provisioning; + +-- reintroduce broken trigger + +DROP TRIGGER enum_update; + +DELIMITER | + +CREATE TRIGGER enum_update AFTER UPDATE ON voip_preferences_enum +FOR EACH ROW BEGIN + UPDATE voip_usr_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; + UPDATE voip_dom_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; + UPDATE voip_peer_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; + UPDATE voip_preferences_enum SET default_val=NEW.value + WHERE OLD.id=NEW.id AND default_val IS NOT NULL AND default_val=OLD.value; +END | + +DELIMITER ; diff --git a/db_scripts/diff/9249.up b/db_scripts/diff/9249.up new file mode 100644 index 00000000..6b8abebe --- /dev/null +++ b/db_scripts/diff/9249.up @@ -0,0 +1,19 @@ +USE provisioning; + +-- fix broken trigger "enum_update" + +DROP TRIGGER enum_update; + +DELIMITER | + +CREATE TRIGGER enum_update AFTER UPDATE ON voip_preferences_enum +FOR EACH ROW BEGIN + UPDATE voip_usr_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; + UPDATE voip_dom_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; + UPDATE voip_peer_preferences SET value=NEW.value + WHERE attribute_id=NEW.preference_id; +END | + +DELIMITER ;