diff --git a/neutron/plugins/vmware/plugins/base.py b/neutron/plugins/vmware/plugins/base.py index a8ba4b83e44..2c8ca6b35e4 100644 --- a/neutron/plugins/vmware/plugins/base.py +++ b/neutron/plugins/vmware/plugins/base.py @@ -984,14 +984,6 @@ class NsxPluginV2(addr_pair_db.AllowedAddressPairsMixin, def delete_network(self, context, id): external = self._network_is_external(context, id) - # Before deleting ports, ensure the peer of a NSX logical - # port with a patch attachment is removed too - port_filter = {'network_id': [id], - 'device_owner': [constants.DEVICE_OWNER_ROUTER_INTF]} - router_iface_ports = self.get_ports(context, filters=port_filter) - for port in router_iface_ports: - nsx_switch_id, nsx_port_id = nsx_utils.get_nsx_switch_and_port_id( - context.session, self.cluster, id) # Before removing entry from Neutron DB, retrieve NSX switch # identifiers for removing them from backend if not external: @@ -1001,41 +993,15 @@ class NsxPluginV2(addr_pair_db.AllowedAddressPairsMixin, self._process_l3_delete(context, id) super(NsxPluginV2, self).delete_network(context, id) - # clean up network owned ports - for port in router_iface_ports: - try: - if nsx_port_id: - nsx_router_id = nsx_utils.get_nsx_router_id( - context.session, self.cluster, port['device_id']) - routerlib.delete_peer_router_lport(self.cluster, - nsx_router_id, - nsx_switch_id, - nsx_port_id) - else: - LOG.warning(_("A nsx lport identifier was not found for " - "neutron port '%s'. Unable to remove " - "the peer router port for this switch port"), - port['id']) - - except (TypeError, KeyError, - api_exc.NsxApiException, - api_exc.ResourceNotFound): - # Do not raise because the issue might as well be that the - # router has already been deleted, so there would be nothing - # to do here - LOG.warning(_("Ignoring exception as this means the peer for " - "port '%s' has already been deleted."), - nsx_port_id) - # Do not go to NSX for external networks if not external: try: switchlib.delete_networks(self.cluster, id, lswitch_ids) - LOG.debug(_("delete_network completed for tenant: %s"), - context.tenant_id) except n_exc.NotFound: - LOG.warning(_("Did not found lswitch %s in NSX"), id) + LOG.warning(_("The following logical switches were not found " + "on the NSX backend:%s"), lswitch_ids) self.handle_network_dhcp_access(context, id, action='delete_network') + LOG.debug("Delete network complete for network: %s", id) def get_network(self, context, id, fields=None): with context.session.begin(subtransactions=True):