Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: PostgreSQL-development <pgsql-hackers@postgresql.org>, Alex Hunsaker <badalex@gmail.com>
Date: 2011-02-07T01:02:05Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Force strings passed to and from plperl to be in UTF8 encoding.
- 50d89d422f9c 9.1.0 cited
On 02/06/2011 05:31 PM, Andrew Dunstan wrote:
> Force strings passed to and from plperl to be in UTF8 encoding.
>
> String are converted to UTF8 on the way into perl and to the
> database encoding on the way back. This avoids a number of
> observed anomalies, and ensures Perl a consistent view of the
> world.
>
> Some minor code cleanups are also accomplished.
>
> Alex Hunsaker, reviewed by Andy Colson.
This has broken the buildfarm :-(
perl ppport.h reports:
*** WARNING: Uses HeUTF8, which may not be portable below perl
5.11.0, even with 'ppport.h'
Experimentation on a CentOS machine suggests we can cure it with this:
#ifndef HeUTF8
#define HeUTF8(he) ((HeKLEN(he) == HEf_SVKEY) ? \
SvUTF8(HeKEY_sv(he))
: \
(U32)HeKUTF8(he))
#endif
cheers
andrew