yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #31030
[Bug 1439919] [NEW] 'power-state' should not be 'running' when instance evacuate failed
Public bug reported:
My environment:
1. nova 2014.1
2. novaclient 2.17.0
I checked the source:
nova.compute.manager.py:
def rebuild_instance(self, context, instance, orig_image_ref, image_ref,
injected_files, new_pass, orig_sys_metadata,
bdms, recreate, on_shared_storage,
preserve_ephemeral=False):
with self._error_out_instance_on_exception(context, instance):
LOG.info(_LI("Rebuilding instance"), context=context,
instance=instance)
if recreate:
if not self.driver.capabilities["supports_recreate"]:
raise exception.InstanceRecreateNotSupported
If raise InstanceRecreateNotSupported, only set vm_state to 'ERROR', but
task_state was 'running' which should be set to 'NOSTAT' or else.
def _error_out_instance_on_exception(self, context, instance,
quotas=None,
instance_state=vm_states.ACTIVE):
...
except Exception:
LOG.exception(_LE('Setting instance vm_state to ERROR'),
instance_uuid=instance_uuid)
with excutils.save_and_reraise_exception():
if quotas:
quotas.rollback()
self._set_instance_error_state(context, instance)
** Affects: nova
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1439919
Title:
'power-state' should not be 'running' when instance evacuate failed
Status in OpenStack Compute (Nova):
New
Bug description:
My environment:
1. nova 2014.1
2. novaclient 2.17.0
I checked the source:
nova.compute.manager.py:
def rebuild_instance(self, context, instance, orig_image_ref, image_ref,
injected_files, new_pass, orig_sys_metadata,
bdms, recreate, on_shared_storage,
preserve_ephemeral=False):
with self._error_out_instance_on_exception(context, instance):
LOG.info(_LI("Rebuilding instance"), context=context,
instance=instance)
if recreate:
if not self.driver.capabilities["supports_recreate"]:
raise exception.InstanceRecreateNotSupported
If raise InstanceRecreateNotSupported, only set vm_state to 'ERROR',
but task_state was 'running' which should be set to 'NOSTAT' or else.
def _error_out_instance_on_exception(self, context, instance,
quotas=None,
instance_state=vm_states.ACTIVE):
...
except Exception:
LOG.exception(_LE('Setting instance vm_state to ERROR'),
instance_uuid=instance_uuid)
with excutils.save_and_reraise_exception():
if quotas:
quotas.rollback()
self._set_instance_error_state(context, instance)
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1439919/+subscriptions
Follow ups
References