Re: [pgsql-packagers] Palle Girgensohn's ICU patch - Mailing list pgsql-hackers

From Palle Girgensohn
Subject Re: [pgsql-packagers] Palle Girgensohn's ICU patch
Date
Msg-id 64E82EF0-0A13-4D9A-8695-1B18F2BC1D2C@pingpong.net
Whole thread Raw
In response to Re: [pgsql-packagers] Palle Girgensohn's ICU patch  (Magnus Hagander <magnus@hagander.net>)
Responses Re: [pgsql-packagers] Palle Girgensohn's ICU patch  (Jakob Egger <jakob@eggerapps.at>)
List pgsql-hackers
> 26 nov 2014 kl. 09:58 skrev Magnus Hagander <magnus@hagander.net>:
>
> On Wed, Nov 26, 2014 at 8:41 AM, Palle Girgensohn <girgen@pingpong.net> wrote:
>> Hi!
>>
>> This is indeed a very well tested patch as we've run it in production for 8+
>> years on 20+ systems.
>>
>> It is not included upstreams mainly because I did ask for it to happen. I've
>> been aiming to do it but haven't got around to it. Also, since 9.2 (?) there
>> is support in PostgreSQL for setting collate locale per column. This is not
>> yet supported by the patch, which makes it non-complete. You could argue
>> that this is not as important as supporting the primary locale, but it would
>> be hard to argue about that, it would have to be added for it to reach
>> inclusion upstreams.
>>
>> So, I can vouch for it, it does the job just fine. Upstreams support will
>> happen eventually.
>
>
> We did also discuss this back when we did the Windows port. One of the
> big arguments against bringing it in then (because it worked) was that
> we'd bring in another compile time dependency that's actually larger
> than PostgreSQL itself. For example,the ICU .tgz file of the latest
> version is 24.3Mb, and the latest postgresql .tgz is 21.8Mb. If we add
> it as a requirement, we more than double the size of PostgreSQL. (Part
> of that was specifically a concern on Windows of course, since no
> dependencies can be expected to exist there - icu is a lot more likely
> to already exist packaged up on linux/bsd)

For windows, that is very good argument. ICU is huge and takes forever to build. But as you say, it is a lot more
likelyto already be installed or at least packaged. 

Also, you where, rightly, reluctant to use the ICU patch at that time because it required a memcopy (from utf-8 to ICUs
internalutf-16) of every column it was to compare. This requirement is of course long gone, as ICU soon after fixed
builtin optimizations for utf-8, a very reasonable development step for the ICU platform... :-) 

Jakob, including the patch in PostgreSQL.app seems pretty reasonable. There's is only a small fraction of ICU that is
used,a couple of libraries I believe. 

As I said, the missing feature will probably be fixed some time in the future, after which I will suggest the patch for
inclusion.But it is not even near the top of my to-do list. :-/ 

Cheers,
Palle




pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: [pgsql-packagers] Palle Girgensohn's ICU patch
Next
From: Christoph Berg
Date:
Subject: Re: PITR failing to stop before DROP DATABASE