summaryrefslogtreecommitdiffstats
path: root/nova/compute
diff options
context:
space:
mode:
authorChris Behrens <cbehrens@codestud.com>2012-07-28 06:13:07 +0000
committerChris Behrens <cbehrens@codestud.com>2012-07-28 06:18:54 +0000
commite425b65b3d7e0736ce14c7523c8af85754eda27b (patch)
tree3a83d2ab7401bdd20fb6c078b0a26ea40ae8d564 /nova/compute
parentbad0a496c0e765da3cc879235c988b7cc617f367 (diff)
Make compute only auto-confirm its own instances
Fixes bug 1030226 Change-Id: I0e0cf0c9950f34b1bdab856b2e1c6872b29fdedc
Diffstat (limited to 'nova/compute')
-rw-r--r--nova/compute/api.py2
-rw-r--r--nova/compute/manager.py13
2 files changed, 7 insertions, 8 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py
index d97390e04..f78e13f20 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -1348,8 +1348,6 @@ class API(base.Base):
self.db.migration_update(context, migration_ref['id'],
{'status': 'confirmed'})
- self.db.instance_update(context, instance['uuid'],
- {'host': migration_ref['dest_compute'], })
@wrap_check_policy
@check_instance_state(vm_state=[vm_states.ACTIVE, vm_states.STOPPED],
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index f41b20a97..686409e47 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -2477,8 +2477,8 @@ class ComputeManager(manager.SchedulerDependentManager):
@manager.periodic_task
def _poll_unconfirmed_resizes(self, context):
if FLAGS.resize_confirm_window > 0:
- migrations = self.db.migration_get_all_unconfirmed(context,
- FLAGS.resize_confirm_window)
+ migrations = self.db.migration_get_unconfirmed_by_dest_compute(
+ context, FLAGS.resize_confirm_window, FLAGS.host)
migrations_info = dict(migration_count=len(migrations),
confirm_window=FLAGS.resize_confirm_window)
@@ -2516,10 +2516,11 @@ class ComputeManager(manager.SchedulerDependentManager):
_set_migration_to_error(migration_id, reason % locals(),
instance=instance)
continue
- if instance['vm_state'] != vm_states.RESIZED \
- or instance['task_state'] is not None:
- state = instance['vm_state']
- reason = _("In %(state)s vm_state, not RESIZED")
+ vm_state = instance['vm_state']
+ task_state = instance['task_state']
+ if vm_state != vm_states.RESIZED or task_state is not None:
+ reason = _("In states %(vm_state)s/%(task_state)s, not"
+ "RESIZED/None")
_set_migration_to_error(migration_id, reason % locals(),
instance=instance)
continue