diff options
author | int32bit <krystism@gmail.com> | 2018-01-22 20:15:21 +0800 |
---|---|---|
committer | Zhang Hua <joshua.zhang@canonical.com> | 2019-01-25 11:22:56 +0800 |
commit | 0b0030ea2273840bd428070b2f23e755a30d2a35 (patch) | |
tree | e4c0aef450934a7d889109d35879ea3f7e5612fc | |
parent | e2d2c3e8b14a5461c95014be3accb1e40f3d1a0b (diff) | |
download | nova-0b0030ea2273840bd428070b2f23e755a30d2a35.tar.gz |
Refix disk size during live migration with disk over-commit
Currently available disk of targer host is calculated based on
local_gb, not available disk(free_disk_gb). This check can be
negative if the target host has no free disk.
Change-Id: Iec50269ef31dfe090f0cd4db95a37909661bd910
closes-bug: 1744079
(cherry picked from commit e2cc275063658b23ed88824100919a6dfccb760d)
Signed-off-by: Zhang Hua <joshua.zhang@canonical.com>
-rwxr-xr-x | nova/tests/unit/virt/libvirt/test_driver.py | 4 | ||||
-rw-r--r-- | nova/virt/libvirt/driver.py | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index 7cf98cf830..9b4b8773b1 100755 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -7303,7 +7303,7 @@ class LibvirtConnTestCase(test.NoDBTestCase): instance_ref.vcpu_model = test_vcpu_model.fake_vcpumodel drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False) compute_info = {'disk_available_least': -1000, - 'local_gb': 100, + 'free_disk_gb': 50, 'cpu_info': 'asdf', } filename = "file" @@ -7320,7 +7320,7 @@ class LibvirtConnTestCase(test.NoDBTestCase): return_value.is_volume_backed = False self.assertThat({"filename": "file", 'image_type': 'default', - 'disk_available_mb': 102400, + 'disk_available_mb': 51200, "disk_over_commit": True, "block_migration": True, "is_volume_backed": False}, diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index da14d71d40..41c398d439 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -5844,7 +5844,7 @@ class LibvirtDriver(driver.ComputeDriver): :returns: a LibvirtLiveMigrateData object """ if disk_over_commit: - disk_available_gb = dst_compute_info['local_gb'] + disk_available_gb = dst_compute_info['free_disk_gb'] else: disk_available_gb = dst_compute_info['disk_available_least'] disk_available_mb = ( |