]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Make sure the resource exists before trying to update it.
authorAngus Salkeld <asalkeld@redhat.com>
Tue, 5 Jun 2012 00:57:08 +0000 (10:57 +1000)
committerAngus Salkeld <asalkeld@redhat.com>
Tue, 5 Jun 2012 00:57:08 +0000 (10:57 +1000)
Change-Id: I5d8bdc0f4ceff61cab0b909dcaaf8ab5952ba4af
Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
heat/engine/resources.py

index 1f1361beecb50221ed47ac0adbff95f4d52a7df0..e42c7238aee6ba08e558c3ee021138c97de488cd 100644 (file)
@@ -137,11 +137,14 @@ class Resource(object):
 
             except Exception as ex:
                 logger.warn('db error %s' % str(ex))
-        elif new_state is not self.CREATE_IN_PROGRESS:
-            rs = db_api.resource_get(None, self.id)
-            rs.update_and_save({'state': new_state})
-            if rs.stack:
-                rs.stack.update_and_save({'updated_at': datetime.utcnow()})
+        elif self.id is not None:
+            try:
+                rs = db_api.resource_get(self.stack.context, self.id)
+                rs.update_and_save({'state': new_state})
+                if rs.stack:
+                    rs.stack.update_and_save({'updated_at': datetime.utcnow()})
+            except Exception as ex:
+                logger.warn('db error %s' % str(ex))
 
         if new_state != self.state:
             ev = {}