Tom Lane wrote:
> Stefan Sassenberg <stefan.sassenberg@gmx.de> writes:
>> Tom Lane wrote:
>>> What LC_CTYPE and LC_MESSAGES settings are you using? We've seen
>>> problems of this ilk when gettext() produces messages encoded in the
>>> "wrong" encoding (ie, not what the database encoding is).
>
>> postgresql.log says [...] LC_MESSAGES=de_DE@euro
>
> Hm. You'll need to check your platform's locale settings, but I bet
> that that setting implies LATIN1 encoding (or LATINsomething anyway).
> So any message text that gettext produces that happens to contain
> high-bit-set LATIN characters would be invalidly encoded in a UTF8
> database. The particular case that causes error stack overflow is
> where the message about invalid conversion itself has the problem :-(
>
> The real bottom line here is that your locale settings have to imply
> an encoding that is the same as the database encoding. This is just
> one of the things that can go wrong when they're different.
>
>> I can't find anything about LC_CTYPE.
>
> "show lc_type" would tell you, but it's probably the same.
de_DE@euro is ISO-8859-15, if that helps. I changed the locale to
en_US.UTF-8 and LC_CTYPE in the environment is set to that value too.
Nevertheless "show lc_ctype" says de_DE@euro, even after a postgresql
restart. How can I change that?
Stefan