NSXT LB: handle listener deletion failures
When deleting a listener which doesn't exist in the backend, the call shouldn't fail but delete from OpenStack DB and issue an error to the log file. Change-Id: I1ee816d82986a651ea2889b1a4a74889e8724dbb
This commit is contained in:
parent
c52138c62e
commit
a492351970
|
@ -220,6 +220,10 @@ class EdgeListenerManager(base_mgr.Nsxv3LoadbalancerBaseManager):
|
||||||
vs_list = lb_service.get('virtual_server_ids')
|
vs_list = lb_service.get('virtual_server_ids')
|
||||||
if vs_list and vs_id in vs_list:
|
if vs_list and vs_id in vs_list:
|
||||||
service_client.remove_virtual_server(lbs_id, vs_id)
|
service_client.remove_virtual_server(lbs_id, vs_id)
|
||||||
|
except (nsxlib_exc.ResourceNotFound,
|
||||||
|
nsx_exc.NsxResourceNotFound):
|
||||||
|
LOG.error('Loadbalancing service %s not found at backend' %
|
||||||
|
lbs_id)
|
||||||
except nsxlib_exc.ManagerError:
|
except nsxlib_exc.ManagerError:
|
||||||
self.lbv2_driver.listener.failed_completion(context,
|
self.lbv2_driver.listener.failed_completion(context,
|
||||||
listener)
|
listener)
|
||||||
|
@ -238,10 +242,9 @@ class EdgeListenerManager(base_mgr.Nsxv3LoadbalancerBaseManager):
|
||||||
context.session, lb_id, listener.default_pool_id,
|
context.session, lb_id, listener.default_pool_id,
|
||||||
None)
|
None)
|
||||||
vs_client.delete(vs_id)
|
vs_client.delete(vs_id)
|
||||||
except nsx_exc.NsxResourceNotFound:
|
except (nsxlib_exc.ResourceNotFound, nsx_exc.NsxResourceNotFound):
|
||||||
msg = (_("virtual server not found on nsx: %(vs)s") %
|
LOG.error("virtual server not found on nsx: %(vs)s" %
|
||||||
{'vs': vs_id})
|
{'vs': vs_id})
|
||||||
raise n_exc.BadRequest(resource='lbaas-listener', msg=msg)
|
|
||||||
except nsxlib_exc.ManagerError:
|
except nsxlib_exc.ManagerError:
|
||||||
self.lbv2_driver.listener.failed_completion(context,
|
self.lbv2_driver.listener.failed_completion(context,
|
||||||
listener)
|
listener)
|
||||||
|
@ -250,10 +253,9 @@ class EdgeListenerManager(base_mgr.Nsxv3LoadbalancerBaseManager):
|
||||||
raise n_exc.BadRequest(resource='lbaas-listener', msg=msg)
|
raise n_exc.BadRequest(resource='lbaas-listener', msg=msg)
|
||||||
try:
|
try:
|
||||||
app_client.delete(app_profile_id)
|
app_client.delete(app_profile_id)
|
||||||
except nsx_exc.NsxResourceNotFound:
|
except (nsxlib_exc.ResourceNotFound, nsx_exc.NsxResourceNotFound):
|
||||||
msg = (_("application profile not found on nsx: %s") %
|
LOG.error("application profile not found on nsx: %s" %
|
||||||
app_profile_id)
|
app_profile_id)
|
||||||
raise n_exc.BadRequest(resource='lbaas-listener', msg=msg)
|
|
||||||
except nsxlib_exc.ManagerError:
|
except nsxlib_exc.ManagerError:
|
||||||
self.lbv2_driver.listener.failed_completion(context,
|
self.lbv2_driver.listener.failed_completion(context,
|
||||||
listener)
|
listener)
|
||||||
|
|
Loading…
Reference in New Issue