libvirt did not previously support snapshot merge or delete operations using libgfapi. This meant that the user could not delete snapshots of a Red Hat Storage (glusterfs) Block Storage volume attached to an instance when using libgfapi.
With this update, libvirt and the Compute service now correctly handle Block Storage volume snapshots with libgfapi enabled, and these snapshots can now be deleted.
Description of problem:
Snapshots do not currently work with libgfapi enabled in Nova for two reasons:
1) libvirt doesn't support "network" disks with qcow2 backing chains. It assumes they are flat files. libvirt must be able to traverse these qcow2 chains like it can with local files.
2) Nova's libvirt code (virt/libvirt/config.py,driver.py) does not handle all of the XML fields involved with "network" disks.
(In reply to Tushar Katarki from comment #3)
Current plan is to wait for a successful run for attached snapshot create, volume attach with snapshots, and attached snapshot delete on the engineering side before generating scratch builds.
The delete portion of that is pending significant work in libvirt so it will be a bit before this happens.
The first two work with the combination of:
a) current libvirt scratch build
b) our pending Nova patch to pass different XML to libvirt's snapshot create
c) a pending Cinder patch to set file permissions : https://review.openstack.org/#/c/75110/
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://rhn.redhat.com/errata/RHSA-2015-0790.html