diff options
author | Peter Razumovsky <prazumovsky@mirantis.com> | 2014-10-23 18:53:40 +0400 |
---|---|---|
committer | Peter Razumovsky <prazumovsky@mirantis.com> | 2014-10-23 19:05:15 +0400 |
commit | 60cbd5bfc424ddc7586048ba8aadb3ef911d9f1a (patch) | |
tree | c947c4a9d5f0599d8273c28528d87ef24de5a004 | |
parent | edadfdd98cece8a084d61c279893d80275f5cfe1 (diff) | |
download | heat-60cbd5bfc424ddc7586048ba8aadb3ef911d9f1a.tar.gz |
Catch NotFound error during loadbalancer deleting
There is a situation, when we request resource data
from db during loadbalancer resource deleting. If
there is no such data, NotFound exception raised and
stack delete failed with this error. To prevent this
behaviour, there is a need to catch NotFound exception
in delete method of loadbalancer.
Change-Id: Ie52bc3059e91bd25effc53bbd255bce6948509ac
Closes-bug: #1381700
-rw-r--r-- | heat/engine/resources/neutron/loadbalancer.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/heat/engine/resources/neutron/loadbalancer.py b/heat/engine/resources/neutron/loadbalancer.py index 32f220cfe..6427d4183 100644 --- a/heat/engine/resources/neutron/loadbalancer.py +++ b/heat/engine/resources/neutron/loadbalancer.py @@ -614,13 +614,15 @@ class LoadBalancer(resource.Resource): def handle_delete(self): client = self.neutron() for member in self.properties.get(self.MEMBERS): - member_id = db_api.resource_data_get(self, member) try: + member_id = db_api.resource_data_get(self, member) client.delete_member(member_id) + db_api.resource_data_delete(self, member) except NeutronClientException as ex: if ex.status_code != 404: raise ex - db_api.resource_data_delete(self, member) + except exception.NotFound: + pass def resource_mapping(): |