← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1687479] Re: Evacuated instances that are deleted before the source host comes up causes cleanup not to happen

 

Reviewed:  https://review.openstack.org/467774
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=42b1fa965028c12d6e78b70d2487d5dd49158176
Submitter: Jenkins
Branch:    master

commit 42b1fa965028c12d6e78b70d2487d5dd49158176
Author: mdrabe <mdrabe@xxxxxxxxxx>
Date:   Wed May 24 15:56:13 2017 -0500

    Query deleted instance records during _destroy_evacuated_instances
    
    _destroy_evacuated_instances is responsible for cleaning up the
    remnants of instance evacuations from the source host. Currently
    this method doesn't account for instances that have been deleted
    after being evacuated.
    
    Change-Id: Ib5f6b03189b7fc5cd0b226ea2dca74865fbef12a
    Closes-Bug: #1687479


** Changed in: nova
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1687479

Title:
  Evacuated instances that are deleted before the source host comes up
  causes cleanup not to happen

Status in OpenStack Compute (nova):
  Fix Released
Status in OpenStack Compute (nova) ocata series:
  In Progress

Bug description:
  Description
  ===========
  When an instance is evacuated to another host, the VM remains on the source host until it is brought back up and deleted by compute via _destroy_evacuated_instances.

  However if the VM that's created on the destination is deleted before
  the source host is brought back up, then _destroy_evacuated_instances
  won't reap the remains because it searches non-deleted records.

  Steps to reproduce
  ==================
  1. Deploy a VM.
  2. Bring the host the VM is on down.
  3. Evacuate the VM to a different host.
  4. Delete the VM from the destination.
  5. Bring the source host back up.

  The source remnants from the evacuation will not be cleaned up, but
  they should be.

  Suspect code is in the nova compute manager in
  _destroy_evacuated_instances:

  1. MigrationList.get_by_filters doesn't appear to return deleted migration records.
  2. {'deleted': False} is currently passed as the filter to _get_instances_on_driver.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1687479/+subscriptions


References