← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1441950] [NEW] instance on source host can not be cleaned after evacuating

 

Public bug reported:

1. Version
nova: 2014.1
hypervisor: rhel7 + libvirt + kvm

2. Description
After one instance was evacuated from hostA to hostB, then delete this instance. 
Then started 'nova-compute' service of hostA, and found in nova-compute.log:
2015-04-09 10:39:52.201 1977 WARNING nova.compute.manager [-] Found 0 in the database and 1 on the hypervisor.

3. Reproduce steps:
* Launch one instance INST on hostA
* Stop 'nova-compute' service on hostA, and wait for down(use 'nova service-list')
* Evacuate INST to hostB
* After evacuated successfully, delete INST
* Start 'nova-compute' service on hostA

Expected results:
* INST on hostA's hypervisor should be destroyed

Actual result:
* INST was alive on hostA's hypervisor.

4. Tips
I checked the source, and found:
nova.compute.manager.py
def _destroy_evacuated_instances(self, context):
....
        filters = {'deleted': False}   # Here filtered the deleted instance. Is it more proper that checked the deleted instances?
        local_instances = self._get_instances_on_driver(context, filters)

** Affects: nova
     Importance: Undecided
         Status: New

-- 
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/1441950

Title:
  instance on source host can not be cleaned after evacuating

Status in OpenStack Compute (Nova):
  New

Bug description:
  1. Version
  nova: 2014.1
  hypervisor: rhel7 + libvirt + kvm

  2. Description
  After one instance was evacuated from hostA to hostB, then delete this instance. 
  Then started 'nova-compute' service of hostA, and found in nova-compute.log:
  2015-04-09 10:39:52.201 1977 WARNING nova.compute.manager [-] Found 0 in the database and 1 on the hypervisor.

  3. Reproduce steps:
  * Launch one instance INST on hostA
  * Stop 'nova-compute' service on hostA, and wait for down(use 'nova service-list')
  * Evacuate INST to hostB
  * After evacuated successfully, delete INST
  * Start 'nova-compute' service on hostA

  Expected results:
  * INST on hostA's hypervisor should be destroyed

  Actual result:
  * INST was alive on hostA's hypervisor.

  4. Tips
  I checked the source, and found:
  nova.compute.manager.py
  def _destroy_evacuated_instances(self, context):
  ....
          filters = {'deleted': False}   # Here filtered the deleted instance. Is it more proper that checked the deleted instances?
          local_instances = self._get_instances_on_driver(context, filters)

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


Follow ups

References