Re: make MaxBackends available in _PG_init

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: "Bossart, Nathan" <bossartn(at)amazon(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>, "wangsh(dot)fnst(at)fujitsu(dot)com" <wangsh(dot)fnst(at)fujitsu(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Greg Sabino Mullane <htamfids(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: make MaxBackends available in _PG_init
Date: 2022-01-29 04:33:42
Message-ID: 20220129043342.GA89174@nathanxps13
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, Jan 29, 2022 at 11:19:12AM +0900, Michael Paquier wrote:
> On Thu, Jan 27, 2022 at 10:18:15AM -0800, Nathan Bossart wrote:
>> Alright. I think the comment adjustments still apply, so I split those out
>> to a new patch.
>
> Looks fine after a second look, so applied.

Thanks!

> As of the issues of this thread, we really have two things to think
> about:
> 1) How do we want to control the access of some parameters in a
> context or another? One idea would be more control through GUCs, say
> with a set of context-related flags that prevent the read of some
> variables until they are set. We could encourage the use of
> GetConfigOption() for that. For MaxBackends, we could add a read-only
> GUC for this purpose. That's what Andres hinted at upthread, I
> guess.
> 2) How do we deal with unwanted access of shared parameters? This one
> is not really controllable, is it? And we are talking about much more
> than MaxBackends. This could perhaps be addressed with more
> documentation in the headers for the concerned variables, as a first
> step.

Hm. Perhaps we should understand the full scope of the problem first.
What else besides MaxBackends and the shared memory GUCs won't be properly
initialized when the shared_preload_libraries' _PG_init() functions are
called? MaxBackends seems to be the only one that folks have experienced
problems with, which is why I initially zeroed in on it.

--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Julien Rouhaud 2022-01-29 05:19:46 Re: Schema variables - new implementation for Postgres 15
Previous Message Jeevan Ladhe 2022-01-29 03:38:51 Re: refactoring basebackup.c