Re: Encoding and i18n

From: Gregory Stark <stark(at)enterprisedb(dot)com>
To: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
Cc: "PostgreSQL-development Hackers" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Encoding and i18n
Date: 2007-10-06 16:49:02
Message-ID: 87lkagtcht.fsf@oxford.xeocode.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Alvaro Herrera" <alvherre(at)commandprompt(dot)com> writes:

> Gregory Stark wrote:
>
>> So does the _() macro automatically recode it to the current server encoding?
>
> Well, I'm not sure if it's _(), elog() or what, but it does get recoded.
> If I have a different client_encoding and get a NOTICE, then both the
> server and client get a message in the corresponding encoding.

Actually I was thinking about things like formatting.c which take localized
strings and return them as data which can end up in the database. If they're
in the wrong encoding then they'll be invalidly encoded strings in the
database.

> In fact this is the reason for the most common "PANIC: stack overflow"
> in elog.c error stack. When a message needs to be recoded but the
> recoding procedure errors out, it wants to report that and this one also
> fails, you get infinite recursion and nothing can get reported.

Ouch

--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2007-10-06 16:52:12 Re: Encoding and i18n
Previous Message Tom Lane 2007-10-06 15:35:18 Re: Encoding and i18n