[pve-devel] [PATCH qemu-server 14/14] qcow2: add external snapshot support

Fabian Grünbichler f.gruenbichler at proxmox.com
Wed May 14 14:14:47 CEST 2025


> DERUMIER, Alexandre <alexandre.derumier at groupe-cyllene.com> hat am 14.05.2025 12:45 CEST geschrieben:
> 
>  
> >>removed snapshot test2 while VM is running:
> >>
> >>delete qemu external snapshot
> >>stream intermediate snapshot test2 to current
> >stream-drive-scsi1: transferred 309.0 MiB of 32.0 GiB (0.94%) in 0s
> >>stream-drive-scsi1: stream-job finished
> >>delete old /dev/extsnap/snap-test2-vm-106-disk-0.qcow2
> >>TASK ERROR: error deleting snapshot test2
> 
> ah, sorry, it come from Lvmplugin:volume_snapshot_delete()
> 
>         $volname = $class->get_snap_volname($volname, $snap);
>         my $cleanup_worker = eval { $class->free_image($storeid, $scfg,
> $volname, $isBase, $format) };
>         die "error deleting snapshot $snap $@\n" if $@;
> 
> 
> where I send the snapvolname to free_image,
> but free_image is dying on parse_volname
> 
> my $name = ($class->parse_volname($volname))[1];
> 
> I'll create an helper like free_snapshot_image , like you have
> suggested it.
> 
> 
> >>it seems to me you didn't really test the version you sent w.r.t.
> >>basic snapshot actions?
> 
> Maybe I only have restested with qcow2 file in my last batch, and not
> tested the whole lvm free_image changes, sorry :/

I'll continue some testing with the dir part (I thought LVM might be
more interesting to run into performance issues/.. ;))

one thing that I already noticed is that snapshot images are listed like
regular images:

$ pvesm list extsnapdir
Volid                                          Format  Type            Size VMID
extsnapdir:555/snap-first-vm-555-disk-0.qcow2  qcow2   images    1073741824 555
extsnapdir:555/snap-second-vm-555-disk-0.qcow2 qcow2   images    1073741824 555
extsnapdir:555/vm-555-disk-0.qcow2             qcow2   images    1073741824 555

so we definitely still need to find a way to encode/store those which makes
the snapshot images properly separate from the "main" ones..




More information about the pve-devel mailing list