Trying to commit an unsaved object with fields set causes the database
authorSapan Bhatia <gwsapan@gmail.com>
Mon, 18 Aug 2014 06:24:22 +0000 (02:24 -0400)
committerSapan Bhatia <gwsapan@gmail.com>
Mon, 18 Aug 2014 06:24:22 +0000 (02:24 -0400)
to lock up.

planetstack/ec2_observer/syncstep.py
planetstack/openstack_observer/syncstep.py

index d5f7523..31fec04 100644 (file)
@@ -86,7 +86,8 @@ class SyncStep:
                 except:
                     o.backend_status = str(e)
 
-                o.save(update_fields=['backend_status'])
+                if (o.pk):
+                    o.save(update_fields=['backend_status'])
 
                 logger.log_exc("sync step failed!")
                 failed.append(o)
index c77c8d5..324829d 100644 (file)
@@ -84,7 +84,8 @@ class SyncStep:
                 except:
                     o.backend_status = str(e)
 
-                o.save(update_fields=['backend_status'])
+                if (o.pk):
+                    o.save(update_fields=['backend_status'])
 
                 logger.log_exc("sync step failed!")
                 failed.append(o)