Snapshot restore issue

I have 2 snapshot in my container. I cannot restore the oldest snapshot point. But it allow me to restore the earliest snapshot point. I know it also allow me the oldest snapshot point if I remove the earliest snapshot. This problem I saw oldest version LXD but as far I remember I in 4.12 I can restore my container on any snapshot point! But now 4.14 doesn’t not support to restore any snapshot point. Is there anything wrong to me?

Snapshots:
graf (taken at 2021/05/20 03:26 UTC) (stateless)
grafff (taken at 2021/05/20 03:26 UTC) (stateless)
root@lxd1:~# lxc restore graf graf
Error: Snapshot “graf” cannot be restored due to subsequent snapshot(s). Set zfs.remove_snapshots to override

Hi,

This is a limitation of ZFS rather than LXD, and it hasn’t changed in LXD 4.14.

Please see https://linuxcontainers.org/lxd/docs/master/storage#zfs for more info.

It suggests a workaround of:

“Copying the wanted snapshot into a new instance and then deleting the old instance does however work, at the cost of losing any other snapshot the instance may have had.”

But how can it was possible in 4.12!!

If you can post a step by step reproducer we can see more clearly what you are doing and then suggest the possibilities of what is happening.

I was restore any snapshot not only the earliest snapshot in version 4.11-12. I thought LXD forum fixed with it new release. But now in 4.14 is same the issue ! only restore in earliest version.

Perhaps you were using a different storage pool type that doesn’t have that restriction or you had enabled zfs.remove_snapshots, but this isn’t something LXD can fix as the restriction comes from ZFS.