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

Ján Tomko jtomko at redhat.com
Wed Jun 17 12:52:38 UTC 2020

On a Wednesday in 2020, 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
> $ 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;
>-            vshError(ctl, "\n%s", _("Copy failed"));
>+            vshPrintExtra(ctl, "\n%s", _("Copy failed"));

If the newline is only needed after the percentage, we should
print it based on the verbose parameter, like virshBlockJobWait
does with the percentage.

Even though we don't have a meaningful error, we should write something
generic instead of quietly exiting (although with an error code).

Also, the other two functions calling virshBlockJobWait seem to be


>             goto cleanup;
>             break;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20200617/5337335e/attachment-0001.sig>

More information about the libvir-list mailing list