We use Proxmox VE with LINSTOR (DRBD on LVM Thin) storage. Unused space on a virtual disk does not take up physical space. But when we live-restore a sparse VM from a Proxmox Backup Server to the same Proxmox VE cluster, all the blocks are allocated during the restore, so when the restore is complete, the virtual disk is 100% allocated.
When fstrim is then run on the disk in the VM, the physical space is freed up again. However, this only works once the live restore has finished. During the restore, fstrim in the running VM has no effect at all on the physical space. This means that a live restore is only possible when the physical storage is larger than the theoretical VM size, even when the actual (used) VM space is much lower, because the restore is guaranteed to fail at some point.
Is this expected or is it a bug? Does anyone know if it affects only LINSTOR or other (native) storage types like plain LVM Thin as well?
When fstrim is then run on the disk in the VM, the physical space is freed up again. However, this only works once the live restore has finished. During the restore, fstrim in the running VM has no effect at all on the physical space. This means that a live restore is only possible when the physical storage is larger than the theoretical VM size, even when the actual (used) VM space is much lower, because the restore is guaranteed to fail at some point.
Is this expected or is it a bug? Does anyone know if it affects only LINSTOR or other (native) storage types like plain LVM Thin as well?