[Top][All Lists]

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

Re: [PATCH] schemas: Add vim modeline

From: Daniel P . Berrangé
Subject: Re: [PATCH] schemas: Add vim modeline
Date: Mon, 3 Aug 2020 12:36:55 +0100
User-agent: Mutt/1.14.5 (2020-06-23)

On Mon, Aug 03, 2020 at 10:41:22AM +0200, Paolo Bonzini wrote:
> On 31/07/20 17:44, Daniel P. Berrangé wrote:
> > I'd consider the runtime protocol separately. In terms of what's on the
> > wire, we use genuine JSON format. The runtime problem is simply that JSON
> > standard is useless when it comes to integers, leaving behaviour undefined
> > in the standard if you exceed 53 bits of precision. So there's no way to
> > reliably parse unsigned 64-bit integers. Given that QEMU needs to pass
> > uint64 values, JSON was simply the wrong choice of format for QMP.
> JSON's 53-bit precision was not part of RFC4627, which was the JSON
> specification in 2010.  They say hindsight is 20/20, but referring to
> RFC7159 which would come 4 years later is rewriting history, not hindsight.

I wasn't refering to RFC7159. The problem of undefined integer precision
with JSON came up right at the very start when QMP was first designed and
implemented, and has come up again periodically ever since then. libvirt
needed to do workarounds right at the start in 2009, in order to fully
handle signed/unsigned 64-bit integers with QMP.

|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

reply via email to

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