Red Hat Bugzilla – Bug 1083345
The --memspec parameters "snapshot=no" doesn't work when creating internal disk snapshot
Last modified: 2015-03-05 02:33:39 EST
Description of problem: The --memspec parameters "snapshot=no" doesn't work when creating internal disk snapshot Version-Release number of selected component (if applicable): libvirt-1.1.1-29.el7.x86_64 qemu-kvm-rhev-1.5.3-59.el7ev.x86_64 How reproducible: 100% Steps to Reproduce: 1.define an guest and keep it running status # virsh list --name --state-running rhel6.5 2.try to create internal disk-only snapshot # virsh snapshot-create-as rhel6.5 diskonly-internal1 --memspec snapshot=no --diskspec vda,snapshot=internal --diskspec vdb,snapshot=internal Domain snapshot diskonly-internal1 created 3. check snapshot info # virsh snapshot-dumpxml rhel6.5 diskonly-internal1 <domainsnapshot> <name>diskonly-internal1</name> <state>running</state> <parent> <name>diskonly-internal</name> </parent> <creationTime>1396342930</creationTime> <memory snapshot='internal'/> <disks> <disk name='vda' snapshot='internal'/> <disk name='vdb' snapshot='internal'/> </disks> Actual results: As above. Expected results: 1) Suppose we support internal disk-only snapshot, we should succeed creating such snapshot in step3 2) If we don't support internal disk-only snapshot, it should come up with some error info when creating it as in step 2 Additional info:
qemu 1.7 added the blockdev-snapshot-internal-sync QMP command which would let us do a disk-only internal snapshot. We have not wired that up in libvirt yet.
The original problem was fixed upstream with commit d2e668e535fd62810eb268351e9e74a483efd0d4 Author: Peter Krempa <pkrempa@redhat.com> Date: Thu May 29 10:52:57 2014 +0200 qemu: snapshot: Reject internal active snapshot without memory state A internal snapshot of a active VM with the memory snapshot disabled explicitly would actually still take the memory snapshot. Reject it explicitly. Before: $ virsh snapshot-create-as --domain VM --diskspec vda,snapshot=internal --memspec snapshot=no Domain snapshot 1401353155 created After: $ virsh snapshot-create-as --domain VM --diskspec vda,snapshot=internal --memspec snapshot=no error: Operation not supported: internal snapshot of a running VM must include the memory state Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1083345 I'll open a bug to add the support for internal snapshots
Verified it on qemu-kvm-rhev-2.1.0-5.el7.x86_64 libvirt-1.2.8-3.el7.x86_64 # virsh list --all Id Name State ---------------------------------------------------- 2 qe-con running # virsh snapshot-create-as qe-con --memspec snapshot=no --diskspec hda,snapshot=internal error: Operation not supported: internal snapshot of a running VM must include the memory state Since the results is expected, set the status to verified.
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-0323.html