Re: Bug #3924: Create Database with another encoding as the encoding from postgres

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Joe <dev(at)freedomcircle(dot)net>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: Bug #3924: Create Database with another encoding as the encoding from postgres
Date: 2008-10-30 14:03:34
Message-ID: 12717.1225375414@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Joe <dev(at)freedomcircle(dot)net> writes:
> I can understand that creating a LATIN2, EUC_CN or some other encoding
> in a LATIN1 cluster may cause problems, but don't quite see how UTF-8
> can be a problem since in essence it includes the others. Perhaps
> someone can provide further explanation?

The locale setting implies a specific encoding. UTF8 may contain all
the same characters that, say, LATIN1 does, but it's not anywhere near
representationally the same, and locale-dependent functions will do the
wrong thing if they are fed UTF8 when they are expecting LATIN1.

> Assuming this situation will remain as is in the immediate future, what
> are my options? The 8.3 cluster has a LATIN1 database that must stay
> that way (at least for a while).

Why does it have to be LATIN1? If your answer is "my client code deals
in LATIN1", just set client_encoding = LATIN1. You could do that with
ALTER DATABASE SET or possibly ALTER USER SET so that it's transparent
to the clients.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Joe 2008-10-30 14:34:49 Re: Bug #3924: Create Database with another encoding as the encoding from postgres
Previous Message Joe 2008-10-30 12:49:31 Bug #3924: Create Database with another encoding as the encoding from postgres