diff options
| author | Walter A. Boring IV <walter.boring@hp.com> | 2013-05-15 16:00:43 -0700 |
|---|---|---|
| committer | Walter A. Boring IV <walter.boring@hp.com> | 2013-06-10 14:10:03 -0700 |
| commit | 080476b2d383b148f6fc8d202c3b0509f9bb1d66 (patch) | |
| tree | 49e8e835257239bb0821a939760f0f768deeee6f /nova/tests | |
| parent | 9116b2448ef90011fe2acea1d7c6e3b070fe75b3 (diff) | |
Fix dangling LUN issue under load with multipath
This fixes an issue where not all of the LUNs are seen
by the kernel at attach time, but later become available.
We now rescan the list of devices seen by multipath at
detach time.
Also added another unit test case.
Fixes Bug: #1175366
Change-Id: Id5b313b17454ec32672373b7b564b9450466b7a2
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/test_linuxscsi.py | 11 | ||||
| -rw-r--r-- | nova/tests/virt/libvirt/test_libvirt_volume.py | 1 |
2 files changed, 11 insertions, 1 deletions
diff --git a/nova/tests/test_linuxscsi.py b/nova/tests/test_linuxscsi.py index 0775b9d5b..8c098a846 100644 --- a/nova/tests/test_linuxscsi.py +++ b/nova/tests/test_linuxscsi.py @@ -43,11 +43,20 @@ class StorageLinuxSCSITestCase(test.TestCase): out = ("mpath6 (350002ac20398383d) dm-3 3PARdata,VV\n" "size=2.0G features='0' hwhandler='0' wp=rw\n" "`-+- policy='round-robin 0' prio=-1 status=active\n" - " |- 0:0:0:1 sde 8:64 active undef running\n" + " |- 0:0:0:1 sde 8:64 active undef running\n" " `- 2:0:0:1 sdf 8:80 active undef running\n" ) return out, None + def fake_execute2(*cmd, **kwargs): + out = ("350002ac20398383d dm-3 3PARdata,VV\n" + "size=2.0G features='0' hwhandler='0' wp=rw\n" + "`-+- policy='round-robin 0' prio=-1 status=active\n" + " |- 0:0:0:1 sde 8:64 active undef running\n" + " `- 2:0:0:1 sdf 8:80 active undef running\n" + ) + return out, None + self.stubs.Set(utils, 'execute', fake_execute) info = linuxscsi.find_multipath_device('/dev/sde') diff --git a/nova/tests/virt/libvirt/test_libvirt_volume.py b/nova/tests/virt/libvirt/test_libvirt_volume.py index c96bc8dda..07a1a7b2f 100644 --- a/nova/tests/virt/libvirt/test_libvirt_volume.py +++ b/nova/tests/virt/libvirt/test_libvirt_volume.py @@ -593,6 +593,7 @@ class LibvirtVolumeTestCase(test.TestCase): libvirt_driver = volume.LibvirtFibreChannelVolumeDriver(self.fake_conn) multipath_devname = '/dev/md-1' devices = {"device": multipath_devname, + "id": "1234567890", "devices": [{'device': '/dev/sdb', 'address': '1:0:0:1', 'host': 1, 'channel': 0, |
