Re: [pgsql-advocacy] Thought provoking piece on - Mailing list pgsql-general

From Stefan Kaltenbrunner
Subject Re: [pgsql-advocacy] Thought provoking piece on
Date
Msg-id 44F840BF.3090008@kaltenbrunner.cc
Whole thread Raw
In response to Re: [pgsql-advocacy] Thought provoking piece on  (Martijn van Oosterhout <kleptog@svana.org>)
Responses Re: [pgsql-advocacy] Thought provoking piece on
List pgsql-general
Martijn van Oosterhout wrote:
> On Fri, Sep 01, 2006 at 12:40:53PM +0200, Stefan Kaltenbrunner wrote:
>> heh if this is a request for a wishlist then I would suggest that we
>> should finally tackle one of the things most databases are doing better
>> then we (including MySQL) - that is better charset/locale/collate support.
>> especially for new users or users converting from other database this is
>> one of the major stumbling blocks (at least as seen on irc regulary)
>
> Yeah well, I got reasonably far on that. To the point of being able to
> have different collations on different columns, creating indexes with
> different collations and having collation-sensetive comparisons:
>
> http://archives.postgresql.org/pgsql-hackers/2005-12/msg01121.php
>
> Where I got stuck is teaching the planner how to use the collation info
> to produce appropriate plans. There wasn't a lot of feedback on the
> patch itself, so I didn't know how to proceed. I don't have time for it
> anymore but if someone wants to pick it up and run with it...
>
> Note however that it's not easy, there are a number of related issues
> which need to be solved at the same time:

yeah I had some hopes for this getting done - and what you have seems
like a nice start - but the whole thing is quite difficult and I expect
that project to need quite a lot of further work :-(

>
> Supporting SORTFUNC_LT/GT is going to get much harder, but there no
> idea as to how much it's used anyway:
>
> http://archives.postgresql.org/pgsql-hackers/2005-12/msg01154.php
>
> The concept of "operator class" needs to be expanded into something
> more general, into something that's actually describes the type, rather
> than just how btrees work.
>
> Do we want to keep relying on the system libraries for collation, or do
> we want to use a cross-platform library like ICU or do we want to
> create our own collation library?

that is probably something that we really need to decide on - system
libaries do seem to be easy but I have some doubts about portability and
quality of implemtations (like getting different behaviour on different
platforms) and some of our supported platforms (like the BSDs) have
rather limited support for collation either.
On the ICU vs. our own library I'm not sure what would be a good thing
to do - ICU is _LARGE_ and we already have some perfectly fine and
proven code for things like character conversion or timezone handling in
the core ...


Stefan

pgsql-general by date:

Previous
From: Martijn van Oosterhout
Date:
Subject: Re: Insert Rule
Next
From: Tom Lane
Date:
Subject: Re: Trigger (Transaction related)