libvirt: cannot detach volume from stopped domain

Bug #1057730 reported by Vish Ishaya on 2012-09-27
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
High
Vish Ishaya
Folsom
High
Chuck Short
nova (Ubuntu)
Undecided
Unassigned
Quantal
Undecided
Unassigned

Bug Description

To reproduce:

nova boot --image=4f8f09ed-5e4b-4bd5-b7d0-9d7db2919df6 --flavor=1 test
nova volume-attach 0eecbfcf-6e47-448f-adf0-5d80b8f2a7c7 3b2f74e8-5816-4335-9fcc-3b042641787c auto
nova stop test
nova volume-detach 0eecbfcf-6e47-448f-adf0-5d80b8f2a7c7 3b2f74e8-5816-4335-9fcc-3b042641787c

traceback from detach greenthread:

2012-09-27 18:32:39 ERROR nova.openstack.common.rpc.amqp [-] Exception during message handling
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/amqp.py", line 275, in _process_data
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp rval = self.proxy.dispatch(ctxt, version, method, **args)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/dispatcher.py", line 145, in dispatch
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp return getattr(proxyobj, method)(ctxt, **kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 117, in wrapped
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp temp_level, payload)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 92, in wrapped
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp return f(*args, **kw)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 181, in decorated_function
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp pass
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 167, in decorated_function
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 202, in decorated_function
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp kwargs['instance']['uuid'], e, sys.exc_info())
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 196, in decorated_function
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1989, in detach_volume
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp self._detach_volume(context, instance, bdm)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1980, in _detach_volume
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp mp)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 117, in wrapped
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp temp_level, payload)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp self.gen.next()
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 92, in wrapped
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp return f(*args, **kw)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 685, in detach_volume
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp virt_dom.detachDevice(xml)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 187, in doit
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp result = proxy_call(self._autowrap, f, *args, **kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 147, in proxy_call
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp rv = execute(f,*args,**kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 76, in tworker
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp rv = meth(*args,**kwargs)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/libvirt.py", line 615, in detachDevice
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp if ret == -1: raise libvirtError ('virDomainDetachDevice() failed', dom=self)
2012-09-27 18:32:39 TRACE nova.openstack.common.rpc.amqp libvirtError: Requested operation is not valid: cannot do live update a device on inactive domain

Changed in nova:
status: New → In Progress
importance: Undecided → High
assignee: nobody → Vish Ishaya (vishvananda)
tags: added: folsom-backport-potential

Reviewed: https://review.openstack.org/13790
Committed: http://github.com/openstack/nova/commit/81fa6f717d6e32a4cfc2c734e228e60b204da045
Submitter: Jenkins
Branch: master

commit 81fa6f717d6e32a4cfc2c734e228e60b204da045
Author: Vishvananda Ishaya <email address hidden>
Date: Thu Sep 27 20:33:17 2012 +0000

    libvirt: allows attach and detach from all domains

    Previously attaching/detaching from a shutoff domain would fail.

    Fixes bug 1057730

    Change-Id: I876872700da125cb078746401b1b80da265880ff

Changed in nova:
status: In Progress → Fix Committed
Chuck Short (zulcss) on 2012-10-24
tags: removed: folsom-backport-potential

Reviewed: https://review.openstack.org/14752
Committed: http://github.com/openstack/nova/commit/d015be51bd514d27e23040391cf2f27a5c7a67a9
Submitter: Jenkins
Branch: stable/folsom

commit d015be51bd514d27e23040391cf2f27a5c7a67a9
Author: Vishvananda Ishaya <email address hidden>
Date: Thu Sep 27 20:33:17 2012 +0000

    libvirt: allows attach and detach from all domains

    Previously attaching/detaching from a shutoff domain would fail.

    Fixes bug 1057730

    Change-Id: I876872700da125cb078746401b1b80da265880ff
    (cherry picked from commit 81fa6f717d6e32a4cfc2c734e228e60b204da045)

Thierry Carrez (ttx) on 2012-11-21
Changed in nova:
milestone: none → grizzly-1
status: Fix Committed → Fix Released
Changed in nova (Ubuntu):
status: New → Fix Released
Changed in nova (Ubuntu Quantal):
status: New → Confirmed

Hello Vish, or anyone else affected,

Accepted nova into quantal-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/nova/2012.2.1+stable-20121212-a99a802e-0ubuntu1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in nova (Ubuntu Quantal):
status: Confirmed → Fix Committed
tags: added: verification-needed
Launchpad Janitor (janitor) wrote :
Download full text (8.3 KiB)

This bug was fixed in the package nova - 2012.2.1+stable-20121212-a99a802e-0ubuntu1

---------------
nova (2012.2.1+stable-20121212-a99a802e-0ubuntu1) quantal-proposed; urgency=low

  * Ubuntu updates:
    - debian/control: Ensure novaclient is upgraded with nova,
      require python-keystoneclient >= 1:2.9.0. (LP: #1073289)
    - d/p/avoid_setuptools_git_dependency.patch: Refresh.
  * Dropped patches, applied upstream:
    - debian/patches/CVE-2012-5625.patch: [a99a802]
  * Resynchronize with stable/folsom (b55014ca) (LP: #1085255):
    - [a99a802] create_lvm_image allocates dirty blocks (LP: #1070539)
    - [670b388] RPC exchange name defaults to 'openstack' (LP: #1083944)
    - [3ede373] disassociate_floating_ip with multi_host=True fails
      (LP: #1074437)
    - [22d7c3b] libvirt imagecache should handle shared image storage
      (LP: #1075018)
    - [e787786] Detached and deleted RBD volumes remain associated with insance
      (LP: #1083818)
    - [9265eb0] live_migration missing migrate_data parameter in Hyper-V driver
      (LP: #1066513)
    - [3d99848] use_single_default_gateway does not function correctly
      (LP: #1075859)
    - [65a2d0a] resize does not migrate DHCP host information (LP: #1065440)
    - [102c76b] Nova backup image fails (LP: #1065053)
    - [48a3521] Fix config-file overrides for nova-dhcpbridge
    - [69663ee] Cloudpipe in Folsom: no such option: cnt_vpn_clients
      (LP: #1069573)
    - [6e47cc8] DisassociateAddress can cause Internal Server Error
      (LP: #1080406)
    - [22c3d7b] API calls to dis-associate an auto-assigned floating IP should
      return proper warning (LP: #1061499)
    - [bd11d15] libvirt: if exception raised during volume_detach, volume state
      is inconsistent (LP: #1057756)
    - [dcb59c3] admin can't describe all images in ec2 api (LP: #1070138)
    - [78de622] Incorrect Exception raised during Create server when metadata
      over 255 characters (LP: #1004007)
    - [c313de4] Fixed IP isn't released before updating DHCP host file
      (LP: #1078718)
    - [f4ab42d] Enabling Return Reservation ID with XML create server request
      returns no body (LP: #1061124)
    - [3db2a38] 'BackupCreate' should accept rotation parameter greater than or
      equal to zero (LP: #1071168)
    - [f7e5dde] libvirt reboot sometimes fails to reattach volumes
      (LP: #1073720)
    - [ff776d4] libvirt: detaching volume may fail while terminating other
      instances on the same host concurrently (LP: #1060836)
    - [85a8bc2] Used instance uuid rather than id in remove-fixed-ip
    - [42a85c0] Fix error on invalid delete_on_termination value
    - [6a17579] xenapi migrations fail w/ swap (LP: #1064083)
    - [97649b8] attach-time field for volumes is not updated for detach volume
      (LP: #1056122)
    - [8f6a718] libvirt: rebuild is not using kernel and ramdisk associated with
      the new image (LP: #1060925)
    - [fbe835f] live-migration and volume host assignement (LP: #1066887)
    - [c2a9150] typo prevents volume_tmp_dir flag from working (LP: #1071536)
    - [93efa21] Instances deleted during spawn leak network allocations
      (LP: #1068716)
    - [ebabd02] After restartin...

Read more...

Changed in nova (Ubuntu Quantal):
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2013-04-04
Changed in nova:
milestone: grizzly-1 → 2013.1
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers