On 1/6/22 02:33, Raphael Norwitz wrote: > Today if virConnectOpenAuth fails, qemuMigrationSrcPerformPeer2Peer() > returns VIR_ERR_OPERATION_FAILED. This change switches that error code > to VIR_ERR_NO_CONNECT, which is more accurate. > > This should help libvirt consumers more intellegently retry migrations > on intermittent connection failures. > > CC: Bhuvnesh Jain <bhuvnesh.jain@xxxxxxxxxxx> > Suggested-by: John Levon <john.levon@xxxxxxxxxxx> > Signed-off-by: Raphael Norwitz <raphael.norwitz@xxxxxxxxxxx> > --- > src/qemu/qemu_migration.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c > index b9d7d582f5..f7ced209a4 100644 > --- a/src/qemu/qemu_migration.c > +++ b/src/qemu/qemu_migration.c > @@ -5145,7 +5145,7 @@ qemuMigrationSrcPerformPeer2Peer(virQEMUDriver *driver, > goto cleanup; > > if (dconn == NULL) { > - virReportError(VIR_ERR_OPERATION_FAILED, > + virReportError(VIR_ERR_NO_CONNECT, > _("Failed to connect to remote libvirt URI %s: %s"), > dconnuri, virGetLastErrorMessage()); > return -1; I'm not exactly sure why we need this virReportError() in the first place. Basically, we are just overwriting a more accurate error with this generic one. Doesn't removing this virReportError() fix the problem? Michal