diff options
| author | Jian Wen <wenjianhn@gmail.com> | 2012-09-24 23:30:02 +0800 |
|---|---|---|
| committer | Jian Wen <wenjianhn@gmail.com> | 2012-09-25 12:30:47 +0800 |
| commit | d272415fd6fe9cdbd66fdfdf9aedc8a43b87d9b5 (patch) | |
| tree | 5644956bf5bd1ffd1e963ba0778187a177c9d1e8 /nova/virt | |
| parent | bd9767b1aa664e25ca905b40bd9de4ead2f6a959 (diff) | |
libvirt: Fix _cleanup_resize
Undefine domain and unplug vifs in _cleanup_resize if the instance was
migrated to another host.
Fixes bug 1015731
Change-Id: If6eb1ada029d462777bbd6ea113c98c3b801cf5d
Diffstat (limited to 'nova/virt')
| -rw-r--r-- | nova/virt/libvirt/driver.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index 7e828163c..eb39b0cb5 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -495,7 +495,7 @@ class LibvirtDriver(driver.ComputeDriver): self._destroy(instance) self._cleanup(instance, network_info, block_device_info) - def _cleanup(self, instance, network_info, block_device_info): + def _undefine_domain(self, instance): try: virt_dom = self._lookup_by_name(instance['name']) except exception.NotFound: @@ -526,6 +526,8 @@ class LibvirtDriver(driver.ComputeDriver): locals(), instance=instance) raise + def _cleanup(self, instance, network_info, block_device_info): + self._undefine_domain(instance) self.unplug_vifs(instance, network_info) try: self.firewall_driver.unfilter_instance(instance, @@ -615,6 +617,8 @@ class LibvirtDriver(driver.ComputeDriver): shutil.rmtree(target) if instance['host'] != FLAGS.host: + self._undefine_domain(instance) + self.unplug_vifs(instance, network_info) self.firewall_driver.unfilter_instance(instance, network_info) def volume_driver_method(self, method_name, connection_info, |
