Re: Change initdb default to the builtin collation provider - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: Change initdb default to the builtin collation provider
Date
Msg-id cbf88173-fce9-49f1-a9ee-29f8e982b98a@eisentraut.org
Whole thread Raw
In response to Change initdb default to the builtin collation provider  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: Change initdb default to the builtin collation provider
List pgsql-hackers
On 11.10.25 02:48, Jeff Davis wrote:
> The builtin provider uses code point order, i.e. memcmp(), so the
> final result display order is less human-friendly. For instance, 'Z'
> comes before 'a'.
> 
> That problem is annoying, but*much* easier to fix than the other
> factors. The user might add a COLLATE clause to the final ORDER BY, or
> perform the sort in the application layer or presentation layer.

I remain violently opposed to this idea.  I don't understand how it 
could be acceptable to just not provide a good display order by default 
and have everyone rewrite their queries.

> ICU is better than libc in a lot of ways:
> 
> * Better performance
> * Platform-independent
> * Easier to manage it as a separate library
> 
> But fundamentally, I don't think it's a great default, because it
> favors final result display order at the risk of primary key
> inconsistencies.

I don't understand.  We have a versioning system for ICU collations? 
Does it not work?



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: new environment variable INITDB_LOCALE_PROVIDER
Next
From: Peter Eisentraut
Date:
Subject: Re: make tsearch use the database default locale