[PATCH] virsh: cmdBlockcopy: Remove 'error:' prefix for an empty line

Michal Privoznik mprivozn at redhat.com
Wed Jun 17 12:51:18 UTC 2020


On 6/17/20 2:24 PM, Peter Krempa wrote:
> When a block copy job fails prior to reaching the synchronized phase
> while we are waiting for the job to finish virsh would print the
> following:
> 
>   $ virsh blockcopy backup-test vda /tmp/dst.qcow2 --wait --reuse-external --transient-job
>   error:
>   Copy failed
> 
> The above message looks like we've forgot to print the error message
> itself as the line ends after 'error:'. Unfortunately with the current
> API design clients have no way of actually getting the error message as
> the VIR_DOMAIN_EVENT_ID_BLOCK_JOB(_2) event only reports the status but
> not an error and the job then vanishes.
> 
> Fix the expectations by using vshPrintExtra instead of vshError:
> 
>   $ virsh blockcopy backup-test vda /tmp/dst.qcow2 --wait --reuse-external --transient-job
> 
>   Copy failed
> 
> Note that the newline is required to avoid printing the 'Copy failed'
> message on the same line when printing the job progress percentage.
> 
> Inspired by https://bugzilla.redhat.com/show_bug.cgi?id=1847867
> 
> Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> ---
>   tools/virsh-domain.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
> index 5222949566..3597fb6272 100644
> --- a/tools/virsh-domain.c
> +++ b/tools/virsh-domain.c
> @@ -2457,7 +2457,7 @@ cmdBlockcopy(vshControl *ctl, const vshCmd *cmd)
>               break;
> 
>           case VIR_DOMAIN_BLOCK_JOB_FAILED:
> -            vshError(ctl, "\n%s", _("Copy failed"));
> +            vshPrintExtra(ctl, "\n%s", _("Copy failed"));
>               goto cleanup;
>               break;
> 

Reviewed-by: Michal Privoznik <mprivozn at redhat.com>

Michal




More information about the libvir-list mailing list