Re: CREATE COLLATION without LOCALE throws error in v15 - Mailing list pgsql-bugs

From Peter Eisentraut
Subject Re: CREATE COLLATION without LOCALE throws error in v15
Date
Msg-id 428169fe-2eb3-4415-a5be-6f59112f26b2@enterprisedb.com
Whole thread Raw
In response to Re: CREATE COLLATION without LOCALE throws error in v15  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: CREATE COLLATION without LOCALE throws error in v15
List pgsql-bugs
On 07.12.22 00:57, Jeff Davis wrote:
> On Fri, 2022-12-02 at 14:14 -0500, Kyle Spearrin wrote:
>> However, in Postgres 15 we see the following error:
>>
>> ERROR:  parameter "locale" must be specified
> 
> I agree that this is some kind of bug. The docs seem pretty clear[1]:
> 
>    "locale
> 
>      This is a shortcut for setting LC_COLLATE and LC_CTYPE
>      at once. If you specify this, you cannot specify either
>      of those parameters."
> 
> The error appears to come from commit f2553d4306 ("Add option to use
> ICU as global locale provider"). My guess is that it was seen as
> clearer to write LOCALE, and that the error wasn't expected to cause
> anyone a problem.

This was an intentional change because of underlying conceptual and 
catalog changes.  lc_collate, lc_ctype, and iculocale are now tracked 
separately in the catalogs.  This is also important because for a 
database they actually are used separately.  So this also keeps the 
locale/collation settings for databases and collations consistent.

The "locale" parameter is now basically "default for whatever settings 
are appropriate for the locale provider".  We should change the 
documentation in that direction.




pgsql-bugs by date:

Previous
From: Jeff Davis
Date:
Subject: Re: CREATE COLLATION without LOCALE throws error in v15
Next
From: Jeff Davis
Date:
Subject: Re: CREATE COLLATION without LOCALE throws error in v15