Re: Allow tailoring of ICU locales with custom rules

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>, Daniel Verite <daniel(at)manitou-mail(dot)org>
Cc: Pgsql-Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Allow tailoring of ICU locales with custom rules
Date: 2023-03-03 12:45:11
Message-ID: df38d362-ae9c-49a2-aa96-fc5aaa249da3@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 02.03.23 16:39, Laurenz Albe wrote:
> On Wed, 2023-02-22 at 18:35 +0100, Peter Eisentraut wrote:
>>> - there doesn't seem to be a way to add rules to template1.
>>> If someone wants to have icu rules and initial contents to their new
>>> databases, I think they need to create a custom template database
>>> (from template0) for that purpose, in addition to template1.
>>>   From a usability standpoint, this is a bit cumbersome, as it's
>>> normally the role of template1.
>>> To improve on that, shouldn't initdb be able to create template0 with
>>> rules too?
>>
>> Right, that would be an initdb option.  Is that too many initdb options
>> then?  It would be easy to add, if we think it's worth it.
>
> An alternative would be to document that you can drop "template1" and
> create it again using the ICU collation rules you need.
>
> But I'd prefer an "initdb" option.

Ok, here is a version with an initdb option and also a createdb option
(to expose the CREATE DATABASE option).

You can mess with people by setting up your databases like this:

initdb -D data --locale-provider=icu --icu-rules='&a < c < b < e < d'

;-)

Attachment Content-Type Size
v7-0001-Allow-tailoring-of-ICU-locales-with-custom-rules.patch text/plain 43.3 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Önder Kalacı 2023-03-03 13:10:33 Re: [PATCH] Use indexes on the subscriber when REPLICA IDENTITY is full on the publisher
Previous Message jacktby@gmail.com 2023-03-03 12:37:48 What's MultiXactId?