Re: PG 16 draft release notes ready

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PG 16 draft release notes ready
Date: 2023-08-23 16:36:01
Message-ID: 174c4a82eca9fcc0e636abd15f865101c107f4f5.camel@j-davis.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, 2023-08-22 at 22:23 -0400, Bruce Momjian wrote:
> > I notice that this item is still listed:
> >
> >  * Determine the ICU default locale from the environment (Jeff
> > Davis)
> >
> > But that was reverted as part of 2535c74b1a.
>
> The original commit is:
>
>         Author: Jeff Davis <jdavis(at)postgresql(dot)org>
>         2023-03-10 [c45dc7ffb] initdb: derive encoding from locale
> for ICU; similar to
>
> and I don't see that reverted by 2535c74b1a.  Is that a problem?

c45dc7ffb causes initdb to choose the encoding based on the environment
for ICU just like libc, and that was not reverted, so in v16:

$ export LANG=en_US
$ initdb -D data --locale-provider=icu --icu-locale=en
...
The default database encoding has accordingly been set to "LATIN1".

Whereas previously in v15 that would cause an error like:

initdb: error: encoding mismatch
initdb: detail: The encoding you selected (UTF8) and the encoding
that the selected locale uses (LATIN1) do not match...

"Determine the ICU default locale from the environment" to me refers to
what happened in 27b62377b4, where initdb would select an ICU locale if
one was not provided. 2535c74b1a reverted that, so in v16:

$ initdb -D data --locale-provider=icu
initdb: error: ICU locale must be specified

Just like in v15.

Regards,
Jeff Davis

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2023-08-23 17:04:26 Re: using SysCacheGetAttrNotNull in place of heap_getattr
Previous Message Nathan Bossart 2023-08-23 16:35:20 Re: add timing information to pg_upgrade