qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH RFC v3 14/27] COLO failover: Introduce a new com


From: Wen Congyang
Subject: Re: [Qemu-devel] [PATCH RFC v3 14/27] COLO failover: Introduce a new command to trigger a failover
Date: Wed, 25 Feb 2015 15:40:35 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

On 02/25/2015 03:04 PM, zhanghailiang wrote:
> On 2015/2/17 7:47, Eric Blake wrote:
>> On 02/11/2015 08:17 PM, zhanghailiang wrote:
>>> We leave users to use whatever heartbeat solution they want, if the 
>>> heartbeat
>>> is lost, or other errors they detect, they can use command
>>> 'colo_lost_heartbeat' to tell COLO to do failover, COLO will do operations
>>> accordingly.
>>>
>>> For example,
>>> If send the command to PVM, Primary will exit COLO mode, and takeover,
>>> if to Secondary, Secondary will do failover work and at last takeover 
>>> server.
>>>
>>> Signed-off-by: zhanghailiang <address@hidden>
>>> Signed-off-by: Li Zhijian <address@hidden>
>>> Signed-off-by: Lai Jiangshan <address@hidden>
>>> Signed-off-by: Yang Hongyang <address@hidden>
>>> ---
>>>   hmp-commands.hx                        | 15 ++++++++++++++
>>>   hmp.c                                  |  7 +++++++
>>>   hmp.h                                  |  1 +
>>>   include/migration/migration-colo.h     |  1 +
>>>   include/migration/migration-failover.h | 20 ++++++++++++++++++
>>>   migration/Makefile.objs                |  2 +-
>>>   migration/colo-failover.c              | 38 
>>> ++++++++++++++++++++++++++++++++++
>>>   migration/colo.c                       |  1 +
>>>   qapi-schema.json                       |  9 ++++++++
>>>   qmp-commands.hx                        | 19 +++++++++++++++++
>>>   stubs/migration-colo.c                 |  8 +++++++
>>>   11 files changed, 120 insertions(+), 1 deletion(-)
>>>   create mode 100644 include/migration/migration-failover.h
>>>   create mode 100644 migration/colo-failover.c
>>>
>>> diff --git a/hmp-commands.hx b/hmp-commands.hx
>>
>>> +++ b/qapi-schema.json
>>> @@ -543,6 +543,15 @@
>>>   { 'command': 'query-migrate-capabilities', 'returns':   
>>> ['MigrationCapabilityStatus']}
>>>
>>>   ##
>>> +# @colo-lost-heartbeat
>>> +#
>>> +# Tell COLO that heartbeat is lost
>>> +#
>>> +# Since: 2.3
>>> +##
>>> +{ 'command': 'colo-lost-heartbeat' }
>>
>> Okay...
>>
>>> +
>>> +##
>>>   # @MouseInfo:
>>>   #
>>>   # Information about a mouse device.
>>> diff --git a/qmp-commands.hx b/qmp-commands.hx
>>> index a85d847..1b4a5ca 100644
>>> --- a/qmp-commands.hx
>>> +++ b/qmp-commands.hx
>>> @@ -753,6 +753,25 @@ Example:
>>>   EQMP
>>>
>>>       {
>>> +        .name       = "colo_lost_heartbeat",
>>
>> ...but documented incorrectly (this should use '-' to match the command
>> name in the .json file, not '_')
>>
> 
> Er, yes, you are right, here it should be 'colo-lost-heartbeat' in 
> qmp-commands.hx,
> but 'colo_lost_heartbeat' in hmp-commands.hx, it is a little confused for me,
> why it should be like this?
> 
> i will fix it.
> 
>>> +        .args_type  = "",
>>> +        .mhandler.cmd_new = qmp_marshal_input_colo_lost_heartbeat,
>>> +    },
>>> +
>>> +SQMP
>>> +colo_lost_heartbeat

same here

>>> +--------------------
>>> +
>>> +Tell COLO that heartbeat is lost, a failover or takeover is needed.
>>> +
>>> +Example:
>>> +
>>> +-> { "execute": "colo_lost_heartbeat" }
>>> +<- { "return": {} }
>>
>> This example won't work unless you fix the spelling.
>>
> 
> Should here also be changed to 'colo-lost-heartbeat' ?

Yes.

Thanks
Wen Congyang

> 
> Thanks,
> zhanghailiang
> 
> 
> 
> .
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]