[libvirt] [PATCHv2 19/20] snapshot: qemu: Add support for external snapshot deletion.
pkrempa at redhat.com
Fri Nov 9 13:33:00 UTC 2012
On 11/09/12 12:36, Peter Krempa wrote:
> On 11/06/12 23:39, Eric Blake wrote:
>> On 11/01/2012 10:22 AM, Peter Krempa wrote:
>>> This patch adds limited support for deleting external snaphots. The
>>> machine must not be active and only whole subtrees of snapshots can be
>>> deleted as reparenting was not yet implemented for external snapshots.
>> These are reasonable restrictions for the first implementation. We may
>> relax some of them later - for example, if qemu adds support for doing
>> blockcommit from the active layer, then that would let us do a live
>> deletion of an external snapshot.
>> 6. I created an external checkpoint, did some experiments, and want to
>> remember those results; but I also want to go back to the checkpoint and
>> do some more experiments on a different branch. Solution: here, we need
>> the ability to create NEW qcow2 files that also wrap the common base
>> image. Since virDomainRevertToSnapshot doesn't have a way for us to
>> pass in the new file names we wish to use, this needs to go through
>> virDomainSnapshotCreateXML, which needs a new flag that says that we are
>> simultaneously reverting to the state of an existing snapshot and
>> creating a new snapshot from that point rather than at the current state
>> of execution.
> I saw your submission. But this will probably have to be a 2 step
> 1) create a snapshot at the original branch to have a point to return to
> 2) create the branch and revert to that point in time
> Otherwise it will be hard to return to that original branch. Basically
> we need some kind of "current" snapshot in each of the branches.
> Technically that should be easy for a management application, but it
> won't be that comfortable to do in virsh.
An option would be automatically creating a "current" snapshot when
leaving a branch that would re-use the disk image files, but will need
to be automatically deleted as soon as the restore to it is complete.
More information about the libvir-list