Re: how to make collation work - Mailing list pgsql-novice

From Havasvölgyi Ottó
Subject Re: how to make collation work
Date
Msg-id 006501c54f5c$1a451e10$ab00a8c0@OTTO
Whole thread Raw
In response to how to make collation work  (Havasvölgyi Ottó <h.otto@freemail.hu>)
List pgsql-novice
Volkan,

I did not have the problem you had had, I mean the missing Hungarian
(Turkish in your case) capital letters. I can load them into the table, and
in the query all letters appear correctly, just the order is wrong.
As the docs says, for upper() and lower() the lc-ctype switch is
responsible. This determines what is a letter, and what letter is the
capital pair of another letter.
I have applied both lc-ctype, lc-collate switches with the hu_HU locale with
no result. I will check glibc. Thanks for the suggestion.

Best Regards,
Otto



----- Original Message -----
From: "Volkan YAZICI" <volkan.yazici@gmail.com>
To: "Havasvölgyi Ottó" <h.otto@freemail.hu>
Sent: Monday, May 02, 2005 6:42 PM
Subject: Re: [NOVICE] how to make collation work


> Hi,
>
> On 5/2/05, Havasvölgyi Ottó <h.otto@freemail.hu> wrote:
>> I passed the desired collation and ctype to initdb.
>> The version of gcc is 3.4. Should I upgrade to 4.0 perhaps?
>
> Sorry I was mistaken. Just replace "gcc" words with "glibc" in my
> previous reply.
>
> We have a similar problem for turkish characters too. For instance,
> upper('ı') (dotless i) doesn't work on glibc < 2.3.4 version. I'm not
> sure if Hungarian chars. have the same problem with glibc. I can only
> advice you checking bug lists for Hungarian localization of glibc.
>
>> select upper('á');
>>
>> I expected 'Á', but I got 'á'. So upper() didn't change this Hungarian
>> character.
>
> A similar scenario:
>
> $ dpkg -l | grep libc6
> ii  libc6          2.3.2.ds1-21   GNU C Library: Shared libraries and
> Timezone
> ii  libc6-dev      2.3.2.ds1-21   GNU C Library: Development Libraries and
> Hea
> $ psql -l | grep sil
> sil       | knt      | LATIN5
> $ psql sil
> sil=> SET client_encoding TO LATIN5;
> SET
> sil=> SELECT upper('ı');
> upper
> -------
> ı
> (1 row)
> -- It's not working.
>
> Furthermore, problems are not bounded with the above ones for Turkish
> chars. You have to pass "-E UNICODE" param. to initdb too. (ISO-8859-9
> seems like a little bit buggy in here.) Anyway, I'm not so experienced
> on localization. Just summarizing some threads discussed in Turkish
> localization mailing lists. (Mostly, Devrim Gündüz worked on these
> problems.)
>
> On the other hand, tövis said that he achieved to solve problems with
> Hungarian chars. Maybe you can check your glibc and PostgreSQL
> versions with him.
>
> Regards.
>



pgsql-novice by date:

Previous
From: "Keith Worthington"
Date:
Subject: OIDs
Next
From: Frank Bax
Date:
Subject: Re: OIDs