On Fri, Jan 26, 2018 at 11:11 AM, pengyixiang <yxpengi...@163.com> wrote: > hello, everyone! > I have seen about document in [2] about vm.merge in [1], then I have a > question, If we want delete "snapshot1" in [3], and "snapshot1" is > "snapshot2"'s srcVolume and "snapshot3"'s srcVolume at the > same time, what should I do? libvirt will merge snapshot1 to snapshot2 and > snapshot3? or other ways did for efficiency? > > > Thanks for your help If I can get a reply. > > > > [1] > > @api.method > def merge(self, drive, baseVolUUID, topVolUUID, bandwidth=0, jobUUID=None): > return self.vm.merge( > drive, baseVolUUID, topVolUUID, bandwidth, jobUUID) > > > [2] > https://www.ovirt.org/develop/release-management/features/storage/live-merge/ > > > [3] > backing_img --- snapshot1 --- snapshot2 --- active_img > | > | > ----- snapshot3 >
Vdsm storage does not support this kind of dependency. If you look at the image dependency graph, we allow two kinds of branch points: one is a template ("backing_img" in your graph) which cannot be deleted. The second is a VM preview that can be taken from any point on the graph. It seems that in your case, snapshot3 branching off snapshot1 while snapshot2 already exists, is neither. If snapshot3 had belonged to a temporary VM preview of snapshot1, there is no real need (and thus, no support) for deleting snapshot1 while snapshot3 exists. _______________________________________________ Devel mailing list Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel