equal operator fails on two identical strings if initdb uses the traditional chinese locale

From: Kent Tong <kent(at)cpttm(dot)org(dot)mo>
To: pgsql-bugs(at)postgresql(dot)org
Subject: equal operator fails on two identical strings if initdb uses the traditional chinese locale
Date: 2004-11-24 08:25:14
Message-ID: 41A4456A.4020109@cpttm.org.mo
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi,

I'm running PostgreSQL v8 beta4 on Win2K. The default language
selected in Win2K is Big5.

I am using the Windows installer to install it. Everything is
left as default except that the locale for initdb is set to
"traditional-chinese".

Here is a test (run in pgadmin III):
1. createdb db1 -E Unicode
2. psql db1
3. create table t1 ( s varchar(20) primary key );
4. insert into t1 values('xyz'); Note that x, y and z are all
Chinese characters.
5. select * from t1; It shows that record just fine.
6. select * from t1 where s='xyz'; It fails to find that record.
7. select * from t1 where s like 'xy%'; It finds that record.

If I reinstall pgsql but leave the locale as the default ("C"),
then the above test passes.

BTW, the locale for traditional chinese in postgresql.conf is
set to "traditional-chinese" literally. Shouldn't it be
zh_TW?

Thanks!

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Peter Eisentraut 2004-11-24 10:06:22 Re: equal operator fails on two identical strings if initdb uses the traditional chinese locale
Previous Message Tom Lane 2004-11-24 04:38:17 Re: 8.0.0beta5 fails "make check" on Solaris9/i386