libvirt driver detach_volume fails after migration failure
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Qin Zhao | ||
Icehouse |
Fix Released
|
Medium
|
Qin Zhao |
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.
Here's the exception log that I have:
2014-05-16 16:30:22.328 41419 WARNING nova.compute.
2014-05-16 16:30:22.331 41419 ERROR nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
2014-05-16 16:30:22.331 41419 TRACE nova.compute.
Changed in nova: | |
importance: | Undecided → Medium |
Changed in nova: | |
milestone: | none → juno-1 |
status: | Fix Committed → Fix Released |
Changed in nova: | |
milestone: | juno-1 → 2014.2 |
Patch is here: https:/ /review. openstack. org/#/c/ 94317/