[Yahoo-eng-team] [Bug 1724172] Re: Allocation of an evacuated instance is not cleaned on the source host if instance is not defined on the hypervisor

2019-12-17 Thread Matt Riedemann
** Also affects: nova/pike
   Importance: Undecided
   Status: New

** Changed in: nova/pike
   Status: New => In Progress

** Changed in: nova/pike
   Importance: Undecided => Low

** Changed in: nova/pike
 Assignee: (unassigned) => Balazs Gibizer (balazs-gibizer)

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

Title:
  Allocation of an evacuated instance is not cleaned on the source host
  if instance is not defined on the hypervisor

Status in OpenStack Compute (nova):
  Fix Released
Status in OpenStack Compute (nova) pike series:
  In Progress
Status in OpenStack Compute (nova) queens series:
  Fix Committed
Status in OpenStack Compute (nova) rocky series:
  Fix Committed
Status in OpenStack Compute (nova) stein series:
  Fix Committed

Bug description:
  Nova does not clean up the allocation of an evacuated instance from
  the recovered source compute host if the instance is not any more
  defined on the hypervisor.

  To reproduce:
  * Boot an instance
  * Kill the compute host the instance is booted on
  * Evacuate the instance
  * Recover the original compute host in a way that clears the instance 
definition from the hypervisor (e.g. redeploy the compute host).
  * Check the allocations of the instance in placement API. The allocation 
against the source compute host is not cleaned up.

  The compute manager is supposed to clean up evacuated instances during
  the compute manager init_host method by calling
  _destroy_evacuated_instances. However that function only iterates on
  instances known by the hypervisor [1].

  [1]
  
https://github.com/openstack/nova/blob/5e4c98a58f1afeaa903829f5e3f28cd6dc30bf4b/nova/compute/manager.py#L654

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp


[Yahoo-eng-team] [Bug 1724172] Re: Allocation of an evacuated instance is not cleaned on the source host if instance is not defined on the hypervisor

2019-05-30 Thread Matt Riedemann
** Also affects: nova/stein
   Importance: Undecided
   Status: New

** Also affects: nova/queens
   Importance: Undecided
   Status: New

** Also affects: nova/rocky
   Importance: Undecided
   Status: New

** Changed in: nova/stein
   Status: New => In Progress

** Changed in: nova/stein
   Importance: Undecided => Medium

** Changed in: nova/stein
 Assignee: (unassigned) => Balazs Gibizer (balazs-gibizer)

** Changed in: nova/queens
   Status: New => Confirmed

** Changed in: nova/rocky
   Importance: Undecided => Medium

** Changed in: nova/queens
   Importance: Undecided => Medium

** Changed in: nova/rocky
   Status: New => Confirmed

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

Title:
  Allocation of an evacuated instance is not cleaned on the source host
  if instance is not defined on the hypervisor

Status in OpenStack Compute (nova):
  Fix Released
Status in OpenStack Compute (nova) queens series:
  Confirmed
Status in OpenStack Compute (nova) rocky series:
  Confirmed
Status in OpenStack Compute (nova) stein series:
  In Progress

Bug description:
  Nova does not clean up the allocation of an evacuated instance from
  the recovered source compute host if the instance is not any more
  defined on the hypervisor.

  To reproduce:
  * Boot an instance
  * Kill the compute host the instance is booted on
  * Evacuate the instance
  * Recover the original compute host in a way that clears the instance 
definition from the hypervisor (e.g. redeploy the compute host).
  * Check the allocations of the instance in placement API. The allocation 
against the source compute host is not cleaned up.

  The compute manager is supposed to clean up evacuated instances during
  the compute manager init_host method by calling
  _destroy_evacuated_instances. However that function only iterates on
  instances known by the hypervisor [1].

  [1]
  
https://github.com/openstack/nova/blob/5e4c98a58f1afeaa903829f5e3f28cd6dc30bf4b/nova/compute/manager.py#L654

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp


[Yahoo-eng-team] [Bug 1724172] Re: Allocation of an evacuated instance is not cleaned on the source host if instance is not defined on the hypervisor

2019-05-29 Thread OpenStack Infra
Reviewed:  https://review.opendev.org/512623
Committed: 
https://git.openstack.org/cgit/openstack/nova/commit/?id=9cacaad14e8c18e99e85d9dc04308fee91303f8f
Submitter: Zuul
Branch:master

commit 9cacaad14e8c18e99e85d9dc04308fee91303f8f
Author: Balazs Gibizer 
Date:   Tue Oct 17 15:06:59 2017 +0200

cleanup evacuated instances not on hypervisor

When the compute host recovers from a failure the compute manager
destroys instances that were evacuated from the host while it was down.
However these code paths only consider evacuated instances that are
still reported by the hypervisor. This means that if the compute
host is recovered in a way that the hypervisor lost the definition
of the instances (for example the compute host was redeployed) then
the allocation of these instances will not be deleted.

This patch makes sure that the instance allocation is cleaned up
even if the driver doesn't return that instance as exists on the
hypervisor.

Note that the functional test coverage will be added on top as it needs
some refactoring that would make the bugfix non backportable.

Change-Id: I4bc81b482380c5778781659c4d167a712316dab4
Closes-Bug: #1724172


** 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/1724172

Title:
  Allocation of an evacuated instance is not cleaned on the source host
  if instance is not defined on the hypervisor

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  Nova does not clean up the allocation of an evacuated instance from
  the recovered source compute host if the instance is not any more
  defined on the hypervisor.

  To reproduce:
  * Boot an instance
  * Kill the compute host the instance is booted on
  * Evacuate the instance
  * Recover the original compute host in a way that clears the instance 
definition from the hypervisor (e.g. redeploy the compute host).
  * Check the allocations of the instance in placement API. The allocation 
against the source compute host is not cleaned up.

  The compute manager is supposed to clean up evacuated instances during
  the compute manager init_host method by calling
  _destroy_evacuated_instances. However that function only iterates on
  instances known by the hypervisor [1].

  [1]
  
https://github.com/openstack/nova/blob/5e4c98a58f1afeaa903829f5e3f28cd6dc30bf4b/nova/compute/manager.py#L654

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp