Re: new environment variable INITDB_LOCALE_PROVIDER - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: new environment variable INITDB_LOCALE_PROVIDER
Date
Msg-id 7a4026b1-2baf-4ee5-a612-0dbd2823bed8@eisentraut.org
Whole thread Raw
In response to Re: new environment variable INITDB_LOCALE_PROVIDER  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: new environment variable INITDB_LOCALE_PROVIDER
List pgsql-hackers
On 10.10.25 20:09, Jeff Davis wrote:
> On Fri, 2025-10-10 at 11:32 +0200, Peter Eisentraut wrote:
>>> * Use environment variable name PG_LOCALE_PROVIDER, which seems
>>> more
>>> consistent.
>>
>> Is this not something that could already be done using
>> PG_TEST_INITDB_EXTRA_OPTS ?
> 
> 1. PG_LOCALE_PROVIDER is a documented user-facing option, which will
> make it easier for users to set their preferred provider in scripts,
> etc.
> 
> 2. This change also creates default locales for the builtin and ICU
> providers, so that initdb without any other locale options will succeed
> regardless of the provider.
> 
> I broke these up into two patches as v3 to make it easier to
> understand.
> 
> These patches are independently useful, but also important if we ever
> want to change the initdb default to builtin or ICU.

I'm skeptical that we want user-facing environment variables to provide 
initdb defaults.  The use for that hasn't really been explained.

For example, I don't recall anyone asking for an environment variable to 
determine the checksum default.

If we did that, then we might end up with an environment variable per 
option, which would be a lot.

The locale options are already complicated enough; adding more ways to 
set them with new ways that they interact with other options, this adds 
a lot more complications.

I think in practice initdb is mostly run through packager-provided 
infrastructure, so this facility would probably have very little impact 
in practice.




pgsql-hackers by date:

Previous
From: Cary Huang
Date:
Subject: Re: [PATCH] Add pg_get_trigger_ddl() to retrieve the CREATE TRIGGER statement
Next
From: Jeff Davis
Date:
Subject: Re: new environment variable INITDB_LOCALE_PROVIDER