cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sebastien Goasguen <run...@gmail.com>
Subject Re: About XAPI task queue
Date Tue, 21 May 2013 18:25:09 GMT
You might also want to check out IRC

xen-api on freenode

On May 21, 2013, at 1:30 PM, Nguyen Anh Tu <ng.tuna@gmail.com> wrote:

> Perfect, Chiradeep. Exactly what i'm looking for. How about xapi queue?
> Could u send me more information about it
> 
> Thanks :-)
> 
> Sent from my GT-N7000
> On 22 May 2013 00:19, "Chiradeep Vittal" <Chiradeep.Vittal@citrix.com>
> wrote:
> 
>> Also
>> http://docs.vmd.citrix.com/XenServer/4.0.1/sdk/ch04.html#id2538486
>> 
>> 
>> On 5/21/13 10:12 AM, "Chiradeep Vittal" <Chiradeep.Vittal@citrix.com>
>> wrote:
>> 
>>> Are you looking for information on how XAPI does async processing?
>>> http://wiki.xen.org/wiki/VM_Startup
>>> 
>>> http://wiki.xen.org/wiki/XAPI_Dispatch
>>> 
>>> 
>>> On 5/21/13 1:52 AM, "Nguyen Anh Tu" <ng.tuna@gmail.com> wrote:
>>> 
>>>> no one can explain it for me?
>>>> 
>>>> 
>>>> 2013/5/10 Nguyen Anh Tu <ng.tuna@gmail.com>
>>>> 
>>>>> Hi forks,
>>>>> 
>>>>> I'm working on CS + XCP. I have a question:
>>>>> 
>>>>> When starting VM, Async job "startvm" is sent to XCP Host via xapi.
>>>>> Then
>>>>> we have to wait until xapi task responses.  This code here:
>>>>> 
>>>>>    void startVM(Connection conn, Host host, VM vm, String vmName)
>>>>> throws
>>>>> XmlRpcException {
>>>>>        Task task = null;
>>>>>        try {
>>>>>           * task = vm.startOnAsync(conn, host, false, true);*
>>>>>            try {
>>>>>                //poll every 1 seconds , timeout after 10 minutes
>>>>>                *waitForTask(conn, task, 1000, 10 * 60 * 1000);*
>>>>>                *checkForSuccess(conn, task);*
>>>>>            } catch (Types.HandleInvalid e) {
>>>>>                if (vm.getPowerState(conn) ==
>>>>> Types.VmPowerState.RUNNING) {
>>>>>                    task = null;
>>>>>                    return;
>>>>>                }
>>>>>                throw new CloudRuntimeException("Shutdown VM catch
>>>>> HandleInvalid and VM is not in RUNNING state");
>>>>>            }
>>>>>        } catch (XenAPIException e) {
>>>>>            String msg = "Unable to start VM(" + vmName + ") on host("
>>>>> +
>>>>> _host.uuid +") due to " + e.toString();
>>>>>            s_logger.warn(msg, e);
>>>>>            throw new CloudRuntimeException(msg);
>>>>>        }finally {
>>>>>            if( task != null) {
>>>>>                try {
>>>>>                    task.destroy(conn);
>>>>>                } catch (Exception e1) {
>>>>>                    s_logger.debug("unable to destroy task(" +
>>>>> task.toString() + ") on host(" + _host.uuid +") due to " +
>>>>> e1.toString());
>>>>>                }
>>>>>            }
>>>>>        }
>>>>>    }
>>>>> 
>>>>> Can you explain how xapi task work? How xapi queue work? When its task
>>>>> responses?
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> --
>>>>> 
>>>>> N.g.U.y.e.N.A.n.H.t.U
>>>>> 
>>>> 
>>>> 
>>>> 
>>>> --
>>>> 
>>>> N.g.U.y.e.N.A.n.H.t.U
>>> 
>> 
>> 


Mime
View raw message