From daba8d66a94b344c3b4352788e6e7a9bdf9a3df2 Mon Sep 17 00:00:00 2001 From: Andreas Granig Date: Thu, 17 Oct 2013 13:41:22 +0200 Subject: [PATCH] MT#3995 Use flags as id in kamailio.lcr_gw. ip_addr is not unique anymore, so use the flags column when updating, which actually reflects the voip_peer_hosts.id. --- db_scripts/diff/15028.down | 21 +++++++++++++++++++++ db_scripts/diff/15028.up | 20 ++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 db_scripts/diff/15028.down create mode 100644 db_scripts/diff/15028.up diff --git a/db_scripts/diff/15028.down b/db_scripts/diff/15028.down new file mode 100644 index 00000000..c1e3234a --- /dev/null +++ b/db_scripts/diff/15028.down @@ -0,0 +1,21 @@ +USE provisioning; + +DROP TRIGGER voip_phost_urepl_trig; +DELIMITER ;; +/*!50003 CREATE*/ /*!50017 DEFINER=`sipwise`@`localhost`*/ /*!50003 TRIGGER voip_phost_urepl_trig AFTER UPDATE ON voip_peer_hosts + FOR EACH ROW BEGIN + + UPDATE kamailio.lcr_gw + SET gw_name = NEW.name, ip_addr = NEW.ip, hostname = NEW.host, port = NEW.port, transport = NEW.transport, flags = NEW.id + WHERE lcr_id = 1 AND ip_addr <=> OLD.ip; + + UPDATE kamailio.lcr_rule_target rt, kamailio.lcr_gw gw + SET rt.weight = NEW.weight + WHERE gw.id <=> rt.gw_id + AND gw.lcr_id = 1 + AND gw.group_id <=> NEW.group_id + AND gw.ip_addr <=> NEW.ip; + + END */;; +DELIMITER ; + diff --git a/db_scripts/diff/15028.up b/db_scripts/diff/15028.up new file mode 100644 index 00000000..4a1f5837 --- /dev/null +++ b/db_scripts/diff/15028.up @@ -0,0 +1,20 @@ +USE provisioning; + +DROP TRIGGER voip_phost_urepl_trig; +DELIMITER ;; +/*!50003 CREATE*/ /*!50017 DEFINER=`sipwise`@`localhost`*/ /*!50003 TRIGGER voip_phost_urepl_trig AFTER UPDATE ON voip_peer_hosts + FOR EACH ROW BEGIN + + UPDATE kamailio.lcr_gw + SET gw_name = NEW.name, ip_addr = NEW.ip, hostname = NEW.host, port = NEW.port, transport = NEW.transport, flags = NEW.id + WHERE lcr_id = 1 AND flags <=> NEW.id; + + UPDATE kamailio.lcr_rule_target rt, kamailio.lcr_gw gw + SET rt.weight = NEW.weight + WHERE gw.id <=> rt.gw_id + AND gw.lcr_id = 1 + AND gw.group_id <=> NEW.group_id + AND gw.flags <=> NEW.id; + + END */;; +DELIMITER ;