Comment 0 for bug 1475411

Revision history for this message
Anthony Lee (anthony-mic-lee) wrote :

The post_live_migration step for Nova libvirt driver is currently making a bad assumption about the source and destination connector information. The destination connection info may be different from the source which ends up causing LUNs to be left dangling on the source as the BDM has overridden the connection info with that of the destination.

Code section where this problem is occuring:

https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L6036

At line 6038 the potentially wrong connection info will be passed to _disconnect_volume which then ends up not finding the proper LUNs to remove (and potentially removes the LUNs for a different volume instead).

By adding debug logging after line 6036 and then compare that to the connection info of the source host (by making a call to Cinder's initialize_connection API) you can see that the connection info does not match:

http://paste.openstack.org/show/TjBHyPhidRuLlrxuGktz/

Version of nova being used:

commit 35375133398d862a61334783c1e7a90b95f34cdb
Merge: 83623dd b2c5542
Author: Jenkins <email address hidden>
Date: Thu Jul 16 02:01:05 2015 +0000

    Merge "Port crypto to Python 3"