← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1358552] Re: Fail to remove logical volume

 

** Changed in: nova
       Status: Fix Committed => 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/1358552

Title:
  Fail to remove logical volume

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  The logical volume can not be removed when delete VM error. I look at
  the code, found that  parameter is a list in the libvirt's lvm, but in
  imagebackend, parameters passed is a string.

  in the Libvirt's LVM
  def remove_volumes(paths):  ## #the path is list
      """Remove one or more logical volume."""

      errors = []
      for path in paths:
          clear_volume(path)
          lvremove = ('lvremove', '-f', path)
          try:
              utils.execute(*lvremove, attempts=3, run_as_root=True)
          except processutils.ProcessExecutionError as exp:
              errors.append(str(exp))
      if errors:
          raise exception.VolumesNotRemoved(reason=(', ').join(errors))

  in the imagebackend's LVM
   @contextlib.contextmanager
      def remove_volume_on_error(self, path):
          try:
              yield
          except Exception:
              with excutils.save_and_reraise_exception():
                  lvm.remove_volumes(path)  ### the path is string

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


References