"Full" bhyve virtio-blk DOSes zpool?

I wish I tracked this a bit better, but I ended up going into recover mode and may be missing a few details. However, here it goes.

I am working with a large (for the size of my disk) chunk of data on my computer (FreeBSD 13.0) and so I created a virtual machine for the task. The virtual machine is an Ubuntu VM, the guest OS was installed on a virtio-blk disk image file. For my larger chunk of data I attached another disk but this time it's a zvol. I restored my data to the zvol and all was good. The data in this restore is a borg repository (deduplicated backup), so I was going to restore it to disk. My OS disk isn't big enough, and I didn't make the first zvol big enough either, so I made a second zvol to restore to. Well I forgot to mount the new disk, so my ~60GB started to restore to my VM's 20GB OS drive. Once it filled up enough my VM went immediately into a full read-only mode and I couldn't do anything. So I powered it off, and found out that my entire zroot zpool was reporting as full! However, the amount that I was restoring still wasn't enough to fill my zpool (should have 70% capacity left). Now the restore of that 60GB finished at 7GB so there's no way it could have filled my drive, but at the very least it made FreeBSD think that my zpool was full so on my host I ended up removing some of my virtual machines to clear up space so I could boot back into my VM and clear stuff up.

I know DOS probably isn't the right word for this, but I found it odd that this incident of filling up an img file to capacity started to mess with the host OS, making ZFS think everything on the zpool was full. Is this expected? A bug?
 
Back
Top