From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=39360 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ON8Ab-0004jz-W7 for qemu-devel@nongnu.org; Fri, 11 Jun 2010 13:37:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1ON8Aa-0007GX-Ks for qemu-devel@nongnu.org; Fri, 11 Jun 2010 13:37:29 -0400 Received: from mx1.redhat.com ([209.132.183.28]:38526) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1ON8Aa-0007GM-Dg for qemu-devel@nongnu.org; Fri, 11 Jun 2010 13:37:28 -0400 Date: Fri, 11 Jun 2010 13:42:28 -0300 From: Luiz Capitulino Subject: Re: [Qemu-devel] Re: [PATCH v3 0/5] Add QMP migration events Message-ID: <20100611134228.07a32173@redhat.com> In-Reply-To: <4C124A72.9000807@codemonkey.ws> References: <20100609175215.2e2071a0@redhat.com> <20100611113022.27490bfe@redhat.com> <4C124A72.9000807@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org, Juan Quintela On Fri, 11 Jun 2010 09:38:42 -0500 Anthony Liguori wrote: > > 1. QMP only returns the response when the command is finished, eg: > > > > C: { "execute": "migrate", "id": "foo" ... } > > /* nothing is returned, other commands are issued, after several hours... */ > > S: { "return": ... "id": "foo" } > > > > This is how just about every RPC mechanism works... Let's go for it then. > >> - MIGRATION_STARTED: somebody started a migration, it is emited on > >> source and target, all monitors receive this event. > >> > > The client has started the migration, it knows it. Why is the event needed? > > > > I think we've more or less agreed that MIGRATION_CONNECTED is really the > event we want. Is it useful in the source or in the target? > >> - MIGRATION_ENDED: migration ended with sucess, all needed data is in > >> target machine. Also emitted in all monitors on source and target. > >> > >> - MIGRATION_CANCELED: in one of the source monitors somebody typed: > >> migrate_cancel. It is only emmited on the source monitors, target > >> monitors will receive a MIGRATION_FAILED event. > >> > >> - MIGRATION_FAILED (with this error). At this point we don't have > >> neither the QMP infraestructure for sending (with this error) nor > >> migration infrastructure to put there anything different than -1. > >> > > Aren't all the three events above duplicating the async response? > > > > Yes. Today, we should just generate a MIGRATION_DONE event and let a > client poll for failure status. [...] > MIGRATION_DONE gets deprecated for 0.14. Yeah, this removes the need for polling in 0.13, but I was wondering if it's worth it. If I'm not mistaken, libvirt does the polling when working with the text Monitor and I believe it's not a big deal to keep it until 0.14.