Instance existance not checked on evacuate

Bug #1216501 reported by Kravchenko Pavel
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Guangya Liu (Jay Lau)

Bug Description

In Change 42746 the check for instance existence been removed from instance evacuation flow.
It introduces a bug, because during evacuate to another host, similar to instance create, it must be checked that instance not yet exists on that host.

Tags: compute
description: updated
description: updated
description: updated
description: updated
Changed in nova:
assignee: nobody → Jay Lau (jay-lau-513)
melanie witt (melwitt)
tags: added: compute
Revision history for this message
melanie witt (melwitt) wrote :

Link to the change that removed the check: https://review.openstack.org/#/c/42746

In the commit message, it says the "instance must exist in order to rebuild it," but the _check_instance_exists function actually checks the opposite -- it ensures the instance doesn't already exist on the target host.

Changed in nova:
importance: Undecided → Critical
status: New → Confirmed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → havana-3
Revision history for this message
Guangya Liu (Jay Lau) (jay-lau-513) wrote :

Will upload patch later. Thanks.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/44964

Revision history for this message
Guangya Liu (Jay Lau) (jay-lau-513) wrote :

Hi,

I have just appended a fix for this but was now marked as "Do not merge" and I want to get some comments from you.

In my understanding, when evacuate a VM instance to a target host, we need to make sure the VM instance does not exist on the target host, so my fix was rollback the patch of 42746 and make sure the VM instance does not exist on the target host. Any comments for the fix?

Since it is a critical issue, so hope I can get your comments soon so that I can make this done in havana.

Thanks.

Revision history for this message
Kravchenko Pavel (kravchenko-pavel) wrote :

Hi,

Your understanding is correct.
This check is definitely needed (like in case of manager._prebuild_instance).

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/45022

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/45029

Revision history for this message
Guangya Liu (Jay Lau) (jay-lau-513) wrote :

Hi, can anyone help review? I was trying to rollback the patch of 42746. Please show your comments if any, hope this will not be a blocking issue for havana release. Thanks.

Thierry Carrez (ttx)
Changed in nova:
milestone: havana-3 → havana-rc1
Changed in nova:
importance: Critical → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/45029
Committed: http://github.com/openstack/nova/commit/3a48920193cb8ce370453dbcdea6be7a1806f0f5
Submitter: Jenkins
Branch: master

commit 3a48920193cb8ce370453dbcdea6be7a1806f0f5
Author: Jay Lau <email address hidden>
Date: Wed Sep 4 18:11:03 2013 +0800

    Check instance exists or not when evacuate

    When evacuate instance to another host, similar to instance create,
    nova compute must make sure the instance not yet exist on the host.

    Currently there is no check for this, the fix was add the checking
    of instance exist or not when evacuate.

    Fix bug 1216501

    Change-Id: I3ccbd5db5174904e17ffa8f9236ca4e1a09f4dbe

Thierry Carrez (ttx)
Changed in nova:
status: Confirmed → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: havana-rc1 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.