[pve-devel] [PATCH] vzdump : fix check if volid exist for "virtual" storage : rbd, sheepdog, nexenta

Dietmar Maurer dietmar at proxmox.com
Sat Feb 16 19:38:04 CET 2013


Thanks. Do you think it would make sense to add:

sub volume_exists($volid)

to our storage library?

> -----Original Message-----
> From: pve-devel-bounces at pve.proxmox.com [mailto:pve-devel-
> bounces at pve.proxmox.com] On Behalf Of Alexandre Derumier
> Sent: Samstag, 16. Februar 2013 18:23
> To: pve-devel at pve.proxmox.com
> Subject: [pve-devel] [PATCH] vzdump : fix check if volid exist for "virtual"
> storage : rbd, sheepdog, nexenta
> 
> 
> Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
> ---
>  PVE/VZDump/QemuServer.pm |   14 +++++++++++++-
>  1 file changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/PVE/VZDump/QemuServer.pm b/PVE/VZDump/QemuServer.pm
> index ad85cc2..0f2536e 100644
> --- a/PVE/VZDump/QemuServer.pm
> +++ b/PVE/VZDump/QemuServer.pm
> @@ -94,7 +94,19 @@ sub prepare {
> 
>  	next if !$path;
> 
> -	die "no such volume '$volid'\n" if ! -e $path;
> +	if (! -e $path){
> +	    my $dl = PVE::Storage::vdisk_list($self->{storecfg}, $storeid, undef);
> +	    my $foundvolid = undef;
> +
> +	    PVE::Storage::foreach_volid($dl, sub {
> +		my ($volumeid) = @_;
> +		if($volumeid eq $volid) {
> +		    $foundvolid = 1;
> +		    return;
> +		}
> +	    });
> +	    die "no such volume '$volid'\n" if !$foundvolid;
> +	}
> 
>  	my ($size, $format) = PVE::Storage::Plugin::file_size_info($path);
> 
> --
> 1.7.10.4
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel at pve.proxmox.com
> http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel





More information about the pve-devel mailing list