← Back to team overview

yahoo-eng-team team mailing list archive

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

 

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

commit fee8409208af77f1f01c7ef3c5438cb7ef493b3d
Author: Radoslav Gerganov <rgerganov@xxxxxxxxxx>
Date:   Tue Jul 18 11:35:47 2017 +0300

    VMware: Handle missing volume vmdk during detach
    
    During storage vMotion (live migration of a virtual machine and its disk
    files from one datastore to another), the volume's vmdk may be moved
    to the instance's datastore folder. We handle this case during detach
    volume by catching FileNotFoundException raised by shadow VM relocate
    operation. The shadow VM relocate will be NOP if the source and the
    destination datastores are the same. In this case, the subsequent
    detach disk device from shadow VM will fail if the volume vmdk is
    missing. Handling this case by catching and ignoring
    FileNotFoundException raised by the detach operation.
    
    Change-Id: I33ad36b147f040364514d8097a1dfc363c50b0b7
    Closes-Bug: #1704196
    Co-Authored-By: vbala@xxxxxxxxxx
    Co-Authored-By: mrstarke@xxxxxxxxx


** 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/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):
  Fix Released

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


References