← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1260123] [NEW] libvirt wait_for_block_job_info can infinitely loop

 

Public bug reported:

Callers of wait_for_block_job_info may loop infinitely if the job
doesn't exist, since libvirt returns an empty dict which this function
interprets as cur=0 and end=0 => return True.

I think it should do:

if not any(status):
    return False


Affects online deletion of Cinder GlusterFS snapshots, and possibly other callers of this (live_snapshot).


See http://libvirt.org/git/?p=libvirt-python.git;a=commit;h=f8bc3a9ccc

(Encountered issue on Fedora 19 w/ virt-preview repo, libvirt 1.1.3.)

** Affects: nova
     Importance: Undecided
     Assignee: Eric Harney (eharney)
         Status: New

** Changed in: nova
     Assignee: (unassigned) => Eric Harney (eharney)

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

Title:
  libvirt wait_for_block_job_info can infinitely loop

Status in OpenStack Compute (Nova):
  New

Bug description:
  Callers of wait_for_block_job_info may loop infinitely if the job
  doesn't exist, since libvirt returns an empty dict which this function
  interprets as cur=0 and end=0 => return True.

  I think it should do:

  if not any(status):
      return False

  
  Affects online deletion of Cinder GlusterFS snapshots, and possibly other callers of this (live_snapshot).

  
  See http://libvirt.org/git/?p=libvirt-python.git;a=commit;h=f8bc3a9ccc

  (Encountered issue on Fedora 19 w/ virt-preview repo, libvirt 1.1.3.)

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


Follow ups

References