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.vit...@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.vit...@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.t...@gmail.com> wrote: > > > >>no one can explain it for me? > >> > >> > >>2013/5/10 Nguyen Anh Tu <ng.t...@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 > > > >