commit 9d2abbd9ab60ca873650759feaba98b4d8d35566
Author: Anthony Lee <email address hidden>
Date: Thu Jul 16 13:02:00 2015 -0700
Fix live-migrations usage of the wrong connector information
During the post_live_migration step for the Nova libvirt driver
an incorrect assumption is being made about the connector
information being sent to _disconnect_volume. It is assumed that
the connection information on the source and destination is the
same but that is not always the case. The BDM, where the
connector information is being retrieved from only contains the
connection information for the destination. This will not work
when trying to disconnect volumes from the source during live
migration as the properties such as the target_lun and
initiator_target_map could be different. This ends up leaving
behind dangling LUNs and possibly removing the incorrect
volume's LUNs.
The solution proposed here utilizes the connection_info that
can be retrieved for a host from Cinder's initialize_connection
API. This connection information contains the correct data for
the source host and allows volume LUNs to be removed properly.
NOTE(mriedem): The conflicts are due to the tests being moved
in Kilo and 41f80226e0a1f73af76c7968617ebfda0aeb40b1 not being
in stable/juno (renamed conn var to drvr in libvirt tests).
Reviewed: https:/ /review. openstack. org/228517 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=9d2abbd9ab6 0ca873650759fea ba98b4d8d35566
Committed: https:/
Submitter: Jenkins
Branch: stable/juno
commit 9d2abbd9ab60ca8 73650759feaba98 b4d8d35566
Author: Anthony Lee <email address hidden>
Date: Thu Jul 16 13:02:00 2015 -0700
Fix live-migrations usage of the wrong connector information
During the post_live_migration step for the Nova libvirt driver target_ map could be different. This ends up leaving
an incorrect assumption is being made about the connector
information being sent to _disconnect_volume. It is assumed that
the connection information on the source and destination is the
same but that is not always the case. The BDM, where the
connector information is being retrieved from only contains the
connection information for the destination. This will not work
when trying to disconnect volumes from the source during live
migration as the properties such as the target_lun and
initiator_
behind dangling LUNs and possibly removing the incorrect
volume's LUNs.
The solution proposed here utilizes the connection_info that connection
can be retrieved for a host from Cinder's initialize_
API. This connection information contains the correct data for
the source host and allows volume LUNs to be removed properly.
Conflicts:
nova/ tests/unit/ virt/libvirt/ test_driver. py
NOTE(mriedem): The conflicts are due to the tests being moved af76c7968617ebf da0aeb40b1 not being
in Kilo and 41f80226e0a1f73
in stable/juno (renamed conn var to drvr in libvirt tests).
Change-Id: I3dfb75eb58dfbc 66b218bcee473af 4c2ac282eb6 83f7aef31d7bc08 62271a32c7)
Closes-Bug: #1475411
Closes-Bug: #1288039
Closes-Bug: #1423772
(cherry picked from commit 587092c909e15e9