提交 8fb2aeb6 编写于 作者: P Peter Krempa

migration: Add more specific error code/message on migration abort

A generic error code was returned, if the user aborted a migration job.
This made it hard to distinguish between a user requested abort and an
error that might have occured. This patch introduces a new error code,
which is returned in the specific case of a user abort, while leaving
all other failures with their existing code. This makes it easier to
distinguish between failure while mirgrating and an user requested
abort.

 * include/libvirt/virterror.h: - add new error code
 * src/util/virterror.c: - add message for the new error code
 * src/qemu/qemu_migration.h: - Emit operation aborted error instead of
                                operation failed, on migration abort
上级 d99fe011
......@@ -241,6 +241,8 @@ typedef enum {
VIR_ERR_STORAGE_POOL_BUILT = 76, /* storage pool already built */
VIR_ERR_SNAPSHOT_REVERT_RISKY = 77, /* force was not requested for a
risky domain snapshot revert */
VIR_ERR_OPERATION_ABORTED = 78, /* operation on a domain was
canceled/aborted by user */
} virErrorNumber;
/**
......
......@@ -905,7 +905,7 @@ qemuMigrationUpdateJobStatus(struct qemud_driver *driver,
case QEMU_MONITOR_MIGRATION_STATUS_CANCELLED:
priv->job.info.type = VIR_DOMAIN_JOB_CANCELLED;
qemuReportError(VIR_ERR_OPERATION_FAILED,
qemuReportError(VIR_ERR_OPERATION_ABORTED,
_("%s: %s"), job, _("canceled by client"));
break;
}
......
......@@ -1213,6 +1213,12 @@ virErrorMsg(virErrorNumber error, const char *info)
else
errmsg = _("revert requires force: %s");
break;
case VIR_ERR_OPERATION_ABORTED:
if (info == NULL)
errmsg = _("operation aborted");
else
errmsg = _("operation aborted: %s");
break;
}
return (errmsg);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册