summaryrefslogtreecommitdiffstats
path: root/nova/compute
diff options
context:
space:
mode:
Diffstat (limited to 'nova/compute')
-rwxr-xr-xnova/compute/manager.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 79903f854..7bc8281d4 100755
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -4117,6 +4117,13 @@ class ComputeManager(manager.SchedulerDependentManager):
reservations=None):
try:
yield
+ except exception.InstanceFaultRollback, error:
+ self._quota_rollback(context, reservations)
+ msg = _("Setting instance back to ACTIVE after: %s")
+ LOG.info(msg % error, instance_uuid=instance_uuid)
+ self._instance_update(context, instance_uuid,
+ vm_state=vm_states.ACTIVE)
+ raise error.inner_exception
except Exception, error:
with excutils.save_and_reraise_exception():
self._quota_rollback(context, reservations)