From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Erwin Brandstetter <a9006241(at)unet(dot)univie(dot)ac(dot)at> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: LC_MESSAGES = 'de_AT' screws restoring from dump. |
Date: | 2004-06-08 16:40:40 |
Message-ID: | 2894.1086712840@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Erwin Brandstetter <a9006241(at)unet(dot)univie(dot)ac(dot)at> writes:
> # While running with:
> lc_messages = 'de_AT'
> encoding = UNICODE
> psql:./e_schema.sql:157: FEHLER: could not convert UTF-8 character
> 0x00fc to ISO8859-1
> psql:./e_schema.sql:159: FEHLER: Relation naehe existiert nicht
> There seems to be something wrong with German error messages?
I suspect that de_AT on your machine implies a character set encoding
other than Unicode (likely 8859-something). So strerror() returns
a message that is in 8859-something, but the backend assumes that all
strings inside it are in Unicode, and tries to convert based on that
assumption. You need to use a locale setting that conforms to the
database encoding you've selected. It might be called de_AT.utf8
or some such.
It's a real pain in the neck that Postgres can't detect locale settings
that are incompatible with the database encoding. I don't know any
portable way to find that out, though.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Naomi Walker | 2004-06-08 17:28:02 | Re: out of memory error |
Previous Message | Erwin Brandstetter | 2004-06-08 16:20:10 | LC_MESSAGES = 'de_AT' screws restoring from dump. |