Skip site navigation (1) Skip section navigation (2)

Re: Patch for collation using ICU

From: Palle Girgensohn <girgen(at)pingpong(dot)net>
To: John Hansen <john(at)geeknet(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Patch for collation using ICU
Date: 2005-03-25 11:06:40
Message-ID: 528EFC6D8B46A8F5B4495196@palle.girgensohn.se (view raw or flat)
Thread:
Lists: pgsql-hackers

--On fredag, mars 25, 2005 16.34.41 +1100 John Hansen <john(at)geeknet(dot)com(dot)au> 
wrote:

> Useful if it's going to support earlier releases of ICU....
>
> Not all os's come with ICU3.2, debian for example, currently has 2.1 in
> testing, and 2.6 in unstable.

Oh, OK. FreeBSD has only the 3.2 as port. I can check the older version, I 
doubt it would too much difference. Some autoconf sorcery needed, perhaps.

/Palle

>
> ... John
>
>> -----Original Message-----
>> From: pgsql-hackers-owner(at)postgresql(dot)org
>> [mailto:pgsql-hackers-owner(at)postgresql(dot)org] On Behalf Of
>> Palle Girgensohn
>> Sent: Friday, March 25, 2005 10:40 AM
>> To: pgsql-hackers(at)postgresql(dot)org
>> Subject: [HACKERS] Patch for collation using ICU
>>
>> Hi!
>>
>> I've put together a patch for using IBM's ICU package for collation.
>>
>> If your OS does not have full support for collation ur
>> uppercase/lowercase in multibyte locales, this might be
>> useful. If you are using a multibyte character encoding in
>> your database and want collation, i.e. order by, and also
>> lower(), upper() and initcap() to work properly, this patch
>> will do just that.
>>
>> This patch is needed for FreeBSD, since this OS has no
>> support for collation of for example unicode locales (that
>> is, wcscoll(3) does not do what you expect if you set
>> LC_ALL=sv_SE.UTF-8, for example). AFAIK the patch is *not*
>> necessary for Linux, although IBM claims ICU collation to be
>> about twice as fast as glibc for simple western locales.
>>
>> It adds a configure switch, `--with-icu', which will set up
>> the code to use ICU instead of wchar_t and wcscoll.
>>
>> This has been tested only on FreeBSD-4.11 & FreeBSD-5-stable,
>> where it seems to run well. I've not had the time to do any
>> comparative performance tests yet, but it seems it is at
>> least not slower than using LATIN1 with
>> sv_SE.ISO8859-1 locale, perhaps even faster.
>>
>> I'd be delighted if some more experienced postgresql hackers
>> would review this stuff. The patch is pretty compact, so it's
>> fast reading :)  I'm planning to add this patch as an option
>> (tagged "experimental") to FreeBSD's postgresql port. Any
>> ideas about whether this is a good idea or not?
>>
>> Any thoughts or ideas are welcome!
>>
>> Cheers,
>> Palle
>>
>> Patch at:
>> <http://people.freebsd.org/~girgen/postgresql-icu/pg-801-icu-2
> 005-03-14.diff>
>>
>> ICU at sourceforge: <http://icu.sf.net/>
>>
>>
>> ---------------------------(end of
>> broadcast)---------------------------
>> TIP 7: don't forget to increase your free space map settings
>>
>>





In response to

pgsql-hackers by date

Next:From: John HansenDate: 2005-03-25 11:26:46
Subject: Re: Patch for collation using ICU
Previous:From: Devrim GUNDUZDate: 2005-03-25 10:52:35
Subject: pg_dump issue : Cannot drop a non-existent(?) trigger

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group