← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1784022] Re: Failed forced live migration does not rollback doubled up allocations in placement

 

This isn't an issue after all because we move the allocations on the
source node from the instance to the migration *before* we do the copy:

https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/conductor/tasks/live_migrate.py#L82

https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/conductor/tasks/live_migrate.py#L109

I'll push up the functional test I wrote since it doesn't appear we have
coverage for this.

** No longer affects: nova/queens

** Changed in: nova
       Status: Triaged => Invalid

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

Title:
  Failed forced live migration does not rollback doubled up allocations
  in placement

Status in OpenStack Compute (nova):
  Invalid

Bug description:
  ***This is purely based on code inspection right now.***

  With a forced host live migration, we bypass the scheduler and copy
  the instance's resource allocations from the source node to the dest
  node:

  https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/conductor/tasks/live_migrate.py#L109

  https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/scheduler/utils.py#L473

  On successful post live migration, we remove the doubled up
  allocations (after logging a warning that we couldn't find allocations
  on the migration record):

  https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/compute/manager.py#L6638L6669

  However, for a failed live migration, we don't do anything like that
  in _rollback_live_migration. We'll call this _revert_allocation
  method:

  https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/compute/manager.py#L6803

  But it won't find allocations on the migration record and just return
  False:

  https://github.com/openstack/nova/blob/6be7f7248fb1c2bbb890a0a48a424e205e173c9c/nova/compute/manager.py#L4130

  Which means the instance will have doubled up allocations on both the
  source and dest nodes.

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


References