[pve-devel] [PATCH qemu-server] api: qemu: make resize_vm async close #2315

Thomas Lamprecht t.lamprecht at proxmox.com
Tue Jan 12 12:20:39 CET 2021


On 12.01.21 10:44, Hannes Laimer wrote:
> Signed-off-by: Hannes Laimer <h.laimer at proxmox.com>
> ---
> Resizing is now done asynchronous in a task.

seems like an API change, doesn't it? Maybe (did not checked) we could
add an "async" boolean param and make the return type a optional string, can
you please check if that would work and stay compatible as long as async is not
passed as true.

Then there are again a few cosmetic, but still important, issues:
* even if it's rather obvious the cost adding something like:
  "resize can easily hang for a longer time depending on underlying storage
  and load" is almost zero (takes <10 seconds of one person) and can only
  help to avoid people going to the b
* place the "fix #2315:" first
  https://pve.proxmox.com/wiki/Developer_Documentation#Commits_and_Commit_Messages
* replace the "qemu:" with "disk:", as we're in the qemu-server repository
  the "qemu" doesn't adds much informational value here (like it would in the,
  e.g., pve-manager one).

thanks!

> 
>  PVE/API2/Qemu.pm | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/PVE/API2/Qemu.pm b/PVE/API2/Qemu.pm
> index e8de4ea..379f34a 100644
> --- a/PVE/API2/Qemu.pm
> +++ b/PVE/API2/Qemu.pm
> @@ -3730,7 +3730,7 @@ __PACKAGE__->register_method({
>  	    },
>  	},
>      },
> -    returns => { type => 'null'},
> +    returns => { type => 'string'},
>      code => sub {
>          my ($param) = @_;
>  
> @@ -3817,8 +3817,7 @@ __PACKAGE__->register_method({
>  	    PVE::QemuConfig->write_config($vmid, $conf);
>  	};
>  
> -        PVE::QemuConfig->lock_config($vmid, $updatefn);
> -        return;
> +	return $rpcenv->fork_worker('qmresize', $vmid, $authuser, PVE::QemuConfig->lock_config($vmid, $updatefn));
>      }});
>  
>  __PACKAGE__->register_method({
> 







More information about the pve-devel mailing list