summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/compute/manager.py22
-rw-r--r--nova/tests/compute/test_compute.py8
2 files changed, 18 insertions, 12 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 7c33a8c8a..4e78e03e6 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -1720,16 +1720,21 @@ class ComputeManager(manager.SchedulerDependentManager):
self._notify_about_instance_usage(
context, instance, "resize.revert.start")
+ old_instance_type = migration['old_instance_type_id']
+ instance_type = instance_types.get_instance_type(old_instance_type)
+
instance = self._instance_update(context,
- instance['uuid'],
- host=migration['source_compute'],
- node=migration['source_node'])
+ instance['uuid'],
+ memory_mb=instance_type['memory_mb'],
+ vcpus=instance_type['vcpus'],
+ root_gb=instance_type['root_gb'],
+ ephemeral_gb=instance_type['ephemeral_gb'],
+ instance_type_id=instance_type['id'],
+ host=migration['source_compute'],
+ node=migration['source_node'])
self.network_api.setup_networks_on_host(context, instance,
migration['source_compute'])
- old_instance_type = migration['old_instance_type_id']
- instance_type = instance_types.get_instance_type(old_instance_type)
-
bdms = self._get_instance_volume_bdms(context, instance['uuid'])
block_device_info = self._get_instance_volume_block_device_info(
context, instance['uuid'])
@@ -1748,11 +1753,6 @@ class ComputeManager(manager.SchedulerDependentManager):
# the 'old' VM already has the preferred attributes
self._instance_update(context,
instance['uuid'],
- memory_mb=instance_type['memory_mb'],
- vcpus=instance_type['vcpus'],
- root_gb=instance_type['root_gb'],
- ephemeral_gb=instance_type['ephemeral_gb'],
- instance_type_id=instance_type['id'],
launched_at=timeutils.utcnow(),
expected_task_state=task_states.
RESIZE_REVERTING)
diff --git a/nova/tests/compute/test_compute.py b/nova/tests/compute/test_compute.py
index 079a25d27..03e627af6 100644
--- a/nova/tests/compute/test_compute.py
+++ b/nova/tests/compute/test_compute.py
@@ -2051,8 +2051,14 @@ class ComputeTestCase(BaseTestCase):
def fake(*args, **kwargs):
pass
+ def fake_finish_revert_migration_driver(*args, **kwargs):
+ # Confirm the instance uses the old type in finish_revert_resize
+ inst = args[0]
+ self.assertEqual(inst['instance_type']['flavorid'], '1')
+
self.stubs.Set(self.compute.driver, 'finish_migration', fake)
- self.stubs.Set(self.compute.driver, 'finish_revert_migration', fake)
+ self.stubs.Set(self.compute.driver, 'finish_revert_migration',
+ fake_finish_revert_migration_driver)
reservations = self._ensure_quota_reservations_committed()