Re: Proposal: Add JSON support - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Proposal: Add JSON support
Date
Msg-id 19298.1269819370@sss.pgh.pa.us
Whole thread Raw
In response to Re: Proposal: Add JSON support  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: Proposal: Add JSON support
Re: Proposal: Add JSON support
List pgsql-hackers
Andrew Dunstan <andrew@dunslane.net> writes:
> Here's another thought. Given that JSON is actually specified to consist 
> of a string of Unicode characters, what will we deliver to the client 
> where the client encoding is, say Latin1? Will it actually be a legal 
> JSON byte stream?

No, it won't.  We will *not* be sending anything but latin1 in such a
situation, and I really couldn't care less what the JSON spec says about
it.  Delivering wrongly-encoded data to a client is a good recipe for
all sorts of problems, since the client-side code is very unlikely to be
expecting that.  A datatype doesn't get to make up its own mind whether
to obey those rules.  Likewise, data on input had better match
client_encoding, because it's otherwise going to fail the encoding
checks long before a json datatype could have any say in the matter.

While I've not read the spec, I wonder exactly what "consist of a string
of Unicode characters" should actually be taken to mean.  Perhaps it
only means that all the characters must be members of the Unicode set,
not that the string can never be represented in any other encoding.
There's more than one Unicode encoding anyway...
        regards, tom lane


pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: Proposal: Add JSON support
Next
From: Robert Haas
Date:
Subject: Re: Proposal: Add JSON support