← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1704196] [NEW] Error on detaching a volume with vmwareapi driver when the instance was migrated to same datastore of the volume

 

Public bug reported:

When vmware relocates a vm with a volume attached, the volume's vmdk
goes to the instance datastore. Openstack can handle this without error,
but when the same vm is relocated once more to the volume's datastore it
raises an error when detaching the volume.

This occurs because when they are in the same datastore, the
_relocate_vmdk_volume inside the "try" section in the
_consolidate_vmdk_volume function doesn't give an error, and the
detach_disk_from_vm function will run with the destroy vmdk set to true,
but the vmdk doesn't not exist, raising another error.

How to reproduce:
- Attach a volume to an Instance
In Vcenter:
- Migrate the Instance to a datastore
- Migrate the Instance again to the volume's datastore
- Try to detach the volume

A possible fix is attached here.

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: vmware

** Patch added: "fix.patch"
   https://bugs.launchpad.net/bugs/1704196/+attachment/4914228/+files/fix.patch

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

Title:
  Error on detaching a volume with vmwareapi driver when the instance
  was migrated to same datastore of the volume

Status in OpenStack Compute (nova):
  New

Bug description:
  When vmware relocates a vm with a volume attached, the volume's vmdk
  goes to the instance datastore. Openstack can handle this without
  error, but when the same vm is relocated once more to the volume's
  datastore it raises an error when detaching the volume.

  This occurs because when they are in the same datastore, the
  _relocate_vmdk_volume inside the "try" section in the
  _consolidate_vmdk_volume function doesn't give an error, and the
  detach_disk_from_vm function will run with the destroy vmdk set to
  true, but the vmdk doesn't not exist, raising another error.

  How to reproduce:
  - Attach a volume to an Instance
  In Vcenter:
  - Migrate the Instance to a datastore
  - Migrate the Instance again to the volume's datastore
  - Try to detach the volume

  A possible fix is attached here.

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


Follow ups