[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint,
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status |
Date: |
Tue, 21 Feb 2017 10:20:50 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 |
On 02/21/2017 08:07 AM, Markus Armbruster wrote:
> Zhang Chen <address@hidden> writes:
>
>> On 02/21/2017 07:15 PM, Markus Armbruster wrote:
>>> Zhang Chen <address@hidden> writes:
>>>
>>>> We can call this qmp command to do checkpoint outside of qemu.
>>>> Xen colo will need this function.
>>> I know nothing about "Xen colo", but I'll try anyway.
>>>
>>> I *guess* "Xen colo" is a long-running activity, and the new commands
>>> interact with it. Correct?
>>
>> Yes, you are right.
>
> We need to build a generic framework for interacting with long-running
> activities. But asking you to wait for it wouldn't be fair.
>
>> By the way this patch has been reviewed by Eric black.
>>
>> https://lists.nongnu.org/archive/html/qemu-devel/2017-02/msg03435.html
Blake, but you're not the first to mis-type it.
>>>> +{
>>>> + Error *err = NULL;
>>>> + ReplicationResult *result = g_new0(ReplicationResult, 1);
>>>> + replication_get_error_all(&err);
>>>> + result->status = err ?
>>>> + REPLICATION_STATUS_ERROR :
>>>> + REPLICATION_STATUS_NORMAL;
>>> Reports only that there is an error, throws away the actual error
>>> message. Naive question: could the error message be good to know for
>>> the QMP user?
>>
>> Yes, Xen colo will handle it.
>
> Is that "yes, the QMP user could use the error message, but we're not
> giving it to him regardless", or "no, the QMP user does not need to
> know, and that's because we don't give it to him"?
>
> Even if we want QMP clients to treat all errors the same, transmitting
> the error message can still be useful for troubleshooting.
Ah, as in:
if (err) {
result->status = REPLICATION_STATUS_ERROR;
result->has_desc = true;
result->desc = ...extract string from err
} else {
result->status = REPLICATION_STATUS_NORMAL;
}
by modifying the JSON [1]
>>>> +##
>>>> +{ 'enum': 'ReplicationStatus',
>>>> + 'data': [ 'error', 'normal' ] }
>>> Do you expect more status values in the future?
>>>
>>> If yes, what should clients do when they see a status value they don't
>>> know?
>>
>> We will add other status for it, now, that's enough.
>
> What should a QMP client do when it sees a ReplicationStatus value other
> than 'error' and 'normal'?
>
> You need to provide some guidance, or else you won't be able to add
> status values without breaking clients!
>
>>> If no, why not simply use bool?
Off-hand, what other states do you envision adding?
>>>
>>>> +
>>>> +##
>>>> +# @ReplicationResult:
>>>> +#
>>>> +# The result format for 'query-xen-replication-status'.
>>>> +#
>>>> +# @status: enum of @ReplicationStatus, which shows current
>>>> +# replication error status
>>>> +#
>>>> +# Since: 2.9
>>>> +##
>>>> +{ 'struct': 'ReplicationResult',
>>>> + 'data': { 'status': 'ReplicationStatus'} }
[1] the modification would be:
'data': { 'status': 'ReplicationStatus', '*desc': 'str' }
with documentation that @desc is #optional, is only for human
consumption, and is only present when @status indicates an error.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, (continued)
- [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/08
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Eric Blake, 2017/02/08
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/08
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Stefano Stabellini, 2017/02/13
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/15
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Jason Wang, 2017/02/16
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/16
Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Markus Armbruster, 2017/02/21
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/21
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Markus Armbruster, 2017/02/21
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status,
Eric Blake <=
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/22
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Eric Blake, 2017/02/22
- Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Zhang Chen, 2017/02/23
Re: [Qemu-devel] [PATCH V7 2/2] Add a new qmp command to do checkpoint, query xen replication status, Hailiang Zhang, 2017/02/21
[Qemu-devel] [PATCH V7 1/2] Add a new qmp command to start/stop replication, Zhang Chen, 2017/02/08