Re: Tightening binary receive functions - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: Tightening binary receive functions
Date
Msg-id 4AA0F9FE.1030902@enterprisedb.com
Whole thread Raw
In response to Re: Tightening binary receive functions  (Greg Stark <gsstark@mit.edu>)
Responses Re: Tightening binary receive functions
List pgsql-hackers
Greg Stark wrote:
> On Mon, Aug 31, 2009 at 12:01 PM, Heikki
> Linnakangas<heikki.linnakangas@enterprisedb.com> wrote:
>> Hmm, perhaps we should follow what we did to chr() and ascii(): map the
>> integer to unicode code points if the database encoding is UTF-8, and
>> restrict the range to 0..127 for other multi-byte encodings.
> 
> I don't think we even have to worry about the database's encoding.
> Just make the textual representation of "char" be \xxx (or perhaps we
> could switch to \xHH now) if the value isn't a printable ascii
> character. As long as "char" reads that in properly it doesn't matter
> if it's not a reasonable multibyte character.
> 
> That allows people to treat it as a 1-byte integer type which happens
> to allow input or output as a single ascii character which is
> convenient sometimes.

Hmm, seems reasonable. However, it would mean that "\123" would be
interpreted differently in the new version than the old. In previous
versions the extra characters are truncated and the value becomes '\',
whereas the new interpretation would be 'S'.


(I committed the rest of the patch, without the "char" changes)

--  Heikki Linnakangas EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: Hot Standby, max_connections and max_prepared_transactions
Next
From: Oleg Bartunov
Date:
Subject: PgCon 2009 Developer Meeting pictures