** Changed in: nova/icehouse
Status: Fix Committed => Fix Released
--
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/1321082
Title:
libvirt driver detach_volume fails after migration failure
Status in OpenStack Compute (Nova):
Fix Committed
Status in OpenStack Compute (nova) icehouse series:
Fix Released
Bug description:
When a VM with an attached iSCSI disk fails to migrate, the rollback
methods does not detach the disk from target host. What happens is
_lookup_by_name() fails, since the VM does not exist on the target
host. In detach_volume(), it is supposed to print a warning based on
the correct error code being returned, instead of throwing the
exception. However, this is not happening, because _lookup_by_name()
throws an InstanceNotFound exception, rather than a
libvirt.libvirtError exception. So we also need to catch
InstanceNotFound exception, so that detach_volume() can continue to
execute as expected.
Here's the exception log that I have:
2014-05-16 16:30:22.328 41419 WARNING nova.compute.manager
[req-3db28fed-c287-4b41-ac95-9a37a619c75c 0 4be9915c10c8426cbfe948940f7c8af1]
[instance: 3e1d0d56-3370-4d05-8210-0485fa31757c] Detaching volume from unknown
instance
2014-05-16 16:30:22.331 41419 ERROR nova.compute.manager
[req-3db28fed-c287-4b41-ac95-9a37a619c75c 0 4be9915c10c8426cbfe948940f7c8af1]
[instance: 3e1d0d56-3370-4d05-8210-0485fa31757c] Failed to detach volume
98a940e5-051f-4d0f-a8c7-859a5079d95e from /dev/vdb
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] Traceback (most recent call last):
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] File
"/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 4218, in
_detach_volume
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] encryption=encryption)
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] File
"/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 1356, in
detach_volume
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] virt_dom =
self._lookup_by_name(instance_name)
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] File
"/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 3477, in
_lookup_by_name
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] raise
exception.InstanceNotFound(instance_id=instance_name)
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c] InstanceNotFound: Instance
rhel65_113-3e1d0d56-00000002 could not be found.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.manager [instance:
3e1d0d56-3370-4d05-8210-0485fa31757c]
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1321082/+subscriptions
--
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp