From 1fd877f7c18455aee7202e55856f287e40fcd4ab Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Wed, 10 Jul 2013 18:35:06 +0900 Subject: [PATCH] network.py: exception in Networks.remove_port() Neutron plugin can call remove_port after network deletion for automatic delete port like router/dhcp port. So ignore NetworkNotFound exception. Signed-off-by: Isaku Yamahata Signed-off-by: FUJITA Tomonori --- ryu/controller/network.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ryu/controller/network.py b/ryu/controller/network.py index f70da080..5c04e5fc 100644 --- a/ryu/controller/network.py +++ b/ryu/controller/network.py @@ -368,7 +368,12 @@ class Network(app_manager.RyuApp): old_mac_address = self._get_old_mac(network_id, dpid, port_no) self.dpids.remove_port(dpid, port_no) - self.networks.remove(network_id, dpid, port_no) + try: + self.networks.remove(network_id, dpid, port_no) + except NetworkNotFound: + # port deletion can be called after network deletion + # due to Openstack auto deletion port.(dhcp/router port) + pass if old_mac_address is not None: self.mac_addresses.remove_port(network_id, dpid, port_no, old_mac_address)