From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NBWEI-0001up-KY for qemu-devel@nongnu.org; Fri, 20 Nov 2009 11:21:02 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NBWED-0001tI-Vu for qemu-devel@nongnu.org; Fri, 20 Nov 2009 11:21:02 -0500 Received: from [199.232.76.173] (port=44709 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NBWED-0001t5-JP for qemu-devel@nongnu.org; Fri, 20 Nov 2009 11:20:57 -0500 Received: from mx1.redhat.com ([209.132.183.28]:20101) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NBWED-0002IM-4L for qemu-devel@nongnu.org; Fri, 20 Nov 2009 11:20:57 -0500 Date: Fri, 20 Nov 2009 14:20:43 -0200 From: Luiz Capitulino Subject: Re: [Qemu-devel] [PATCH 00/10]: QError v4 Message-ID: <20091120142043.7ea716b9@doriath> In-Reply-To: <4B06BC3E.5060806@codemonkey.ws> References: <1258487037-24950-1-git-send-email-lcapitulino@redhat.com> <4B04383A.9050101@linux.vnet.ibm.com> <20091119023651.GA15128@shareable.org> <4B06BC3E.5060806@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: Markus@gnu.org, kraxel@redhat.com, qemu-devel@nongnu.org, Armbruster On Fri, 20 Nov 2009 09:56:46 -0600 Anthony Liguori wrote: > Jamie Lokier wrote: > > Anthony Liguori wrote: > > > >> Markus Armbruster wrote: > >> > >>> 3. It falls short of the requirement that clients can easily present a > >>> human-readable error description to their human users, regardless of > >>> whether they know the error or not. > >>> > >>> > >> That's just incorrect. We provide an example conversion table that's > >> akin to strerror() or a __repr__ for an exception in Python. > >> > > > > Markus refers to errors that the client does not know - i.e. when the > > client is older than qemu, or is not in the same development branch if > > it's a branched qemu. Which means the client won't have a fully up to > > date conversion table. What's the proper fix for this? I can only think of having QError on library, which is what we're going to do, anyway. > > Do you mean qemu provides it's current conversion table to the client > > over the wire protocol? > > > > (qemu) format_error "{'class': 'DeviceNotFound', 'data' : {'addr': > '00:11:22'} }" > Device 0:11:22 is not present > > Is what I'm thinking. I don't think it's needed but it solves the > "problem". Couldn't the client print the error class for errors it doesn't know about? Like: "Unknown error: 'CloudProtocol'" I know this is bad, but seems a lot better than printing something with the wrong locale (ie, 'desc').