busy dataset when trying the migrate iscsi disk

Lorne Guse boomshankerx at hotmail.com
Tue Sep 23 05:06:56 CEST 2025


I had a look at the code in ZFSPoolPlugin.pm and found why we are having an issue deleting the zvol

https://github.com/boomshankerx/proxmox-truenas/issues/52#issuecomment-3322144855

This code doesn't seem to match the error message we are getting when deleting the zvol:

cannot destroy 'slow/vm-188-disk-0': dataset is busy

sub zfs_delete_zvol {
...
    if ($err =~ m/^zfs error:(.*): dataset is busy.*/) {
...
}

If this code was simplified to match 'dataset is busy' it would work.

This issue won't exist in my new custom plugin since I override free_image. It is causing issues for the old patch version users. I don't really want to go and patch ZFSPoolPlugin.pm since the new plugin is right around the corner.

I told the users having the issue that I would make an attempt to resolve it.  Otherwise they have to wait for and upgrade to TrueNAS 25.10 and the new plugin.

[https://opengraph.githubassets.com/9e61db5ee7ae1557d66bf3cc5dc92f5ae80c4b33a981241e95afc86f146d8626/boomshankerx/proxmox-truenas/issues/52]<https://github.com/boomshankerx/proxmox-truenas/issues/52#issuecomment-3322144855>
Issue with Deleting data sets using the new storage plugin<https://github.com/boomshankerx/proxmox-truenas/issues/52#issuecomment-3322144855>
Not sure if this is an issue with my nas instance or not. It complains the data sets are busy when I go to delete them causing it fail, and then fail to re add them back as an extent root at guardian:...
github.com


________________________________
From: Max R. Carrara <m.carrara at proxmox.com>
Sent: Wednesday, September 17, 2025 6:04 AM
To: Lorne Guse <boomshankerx at hotmail.com>; Proxmox VE development discussion <pve-devel at lists.proxmox.com>
Subject: Re: busy dataset when trying the migrate iscsi disk

On Mon Sep 15, 2025 at 5:34 AM CEST, Lorne Guse wrote:
> I'm working on TrueNAS over iSCSI for Proxmox and have run into an issue migrating disks. When trying to delete the old storage, which has just successfully been transfered, the iscsidirect connection must remain open because we are getting:
>
> cannot destroy 'slow/vm-188-disk-0': dataset is busy
>
> Is there a way to ensure the iscsidirect connection is closed before trying to delete the underlying zfs dataset?

Hi Lorne! Glad to see you on the mailing list!

I've sifted around our code to see how we handle this, and it seems that
we're simply retrying a couple of times until the dataset is actually
deleted [0]. I think that might be your best bet, though if you find an
alternative, I'd be curious to know.

[0]: https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.proxmox.com%2F%3Fp%3Dpve-storage.git%3Ba%3Dblob%3Bf%3Dsrc%2FPVE%2FStorage%2FZFSPoolPlugin.pm%3Bh%3Dd8d8d0f9fc1cc6f1a02d8f5800c388b355609bf5%3Bhb%3Drefs%2Fheads%2Fmaster%23l362&data=05%7C02%7C%7C08ddb2ac62744e0c4a2908ddf5e259ac%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C638937074705932603%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=dV3Ch024RrnvSKKDsT4k1zP23S%2BCX9jFR6YISZ5Lpe0%3D&reserved=0<https://git.proxmox.com/?p=pve-storage.git;a=blob;f=src/PVE/Storage/ZFSPoolPlugin.pm;h=d8d8d0f9fc1cc6f1a02d8f5800c388b355609bf5;hb=refs/heads/master#l362>




More information about the pve-devel mailing list