Seems like 'zfs destroy' can take longer than 5 seconds, see [0]. I changed the timeout to 15 seconds and also changed the default timeout to 10 instead of 5 seconds, to be on the safe side for other commands like 'zfs create'.
[0]: https://forum.proxmox.com/threads/timeout-beim-l%C3%B6schen-des-entfernen-replikats-bei-entfernung-der-replikation.58467/ Signed-off-by: Fabian Ebner <f.eb...@proxmox.com> --- PVE/Storage/ZFSPoolPlugin.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PVE/Storage/ZFSPoolPlugin.pm b/PVE/Storage/ZFSPoolPlugin.pm index f66b277..3ce06be 100644 --- a/PVE/Storage/ZFSPoolPlugin.pm +++ b/PVE/Storage/ZFSPoolPlugin.pm @@ -182,7 +182,7 @@ sub zfs_request { my $msg = ''; my $output = sub { $msg .= "$_[0]\n" }; - $timeout = PVE::RPCEnvironment->is_worker() ? 60*60 : 5 if !$timeout; + $timeout = PVE::RPCEnvironment->is_worker() ? 60*60 : 10 if !$timeout; run_command($cmd, errmsg => "zfs error", outfunc => $output, timeout => $timeout); @@ -346,7 +346,7 @@ sub zfs_delete_zvol { for (my $i = 0; $i < 6; $i++) { - eval { $class->zfs_request($scfg, undef, 'destroy', '-r', "$scfg->{pool}/$zvol"); }; + eval { $class->zfs_request($scfg, 15, 'destroy', '-r', "$scfg->{pool}/$zvol"); }; if ($err = $@) { if ($err =~ m/^zfs error:(.*): dataset is busy.*/) { sleep(1); -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel