Re: [PATCH] Fix ALTER SYSTEM empty string bug for GUC_LIST_QUOTE parameters

From: Maciek Sakrejda <maciek(at)pganalyze(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andrei Klychkov <andrew(dot)a(dot)klychkov(at)gmail(dot)com>, Jim Jones <jim(dot)jones(at)uni-muenster(dot)de>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: [PATCH] Fix ALTER SYSTEM empty string bug for GUC_LIST_QUOTE parameters
Date: 2025-11-04 18:43:29
Message-ID: CADXhmgQPRecJ2SL2nekkn1DEJCTCR+HMMMwvbgNOjJrGk2rtSg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Nov 4, 2025 at 8:58 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> I wrote:
> > Andrei Klychkov <andrew(dot)a(dot)klychkov(at)gmail(dot)com> writes:
> >> 2. It doesn't look to me that v5 solves the original issue of a user
> >> running ALTER SYSTEM SET <setting like shared_preload_libraries> = ''; ,
> >> then restarting the server and not getting it back online.
>
> > [ shrug... ] It's not supposed to "solve" that. That command is
> > erroneous, and if you didn't test the setting before restarting the
> > server, you shouldn't be too surprised if restart fails.
>
> If you are feeling excited about that specific case, I think the
> correct solution would be to install a GUC check_hook for
> shared_preload_libraries (and probably its siblings too). It couldn't
> go so far as to actually dlopen() the list items, but it could check
> that each one resolves as an accessible file.
>
> A potential objection is that this could result in unwanted failures
> in some scenarios, say where you're restoring a dump and haven't
> yet installed all the relevant extensions. I'm not quite sure if
> there are realistic scenarios where that's actually a problem.
> If it is, perhaps we could adjust the check_hook so it issues
> WARNINGs not hard errors.
>
> I'm not sure it's worth the trouble though. A quick look at dfmgr.c
> suggests that it'd take quite a lot of refactoring (or else code
> duplication, not good) to be able to apply the library lookup process
> without actually doing dlopen. In any case that would be a totally
> different patch from what we are discussing here.

For what it's worth, there was a patch that took a stab at this a
while ago, but it ended up RWF:
https://www.postgresql.org/message-id/flat/Z1kfMUoZkl9P0egB%40paquier.xyz#4a73293daf92aefbbdb43adc9688f082

I was a reviewer and I still think something like that would be useful
and prevent a lot of mistakes.

Thanks,
Maciek

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Masahiko Sawada 2025-11-04 18:57:14 Re: psql: tab-completion support for COPY ... TO/FROM STDIN, STDOUT, and PROGRAM
Previous Message Andres Freund 2025-11-04 18:36:56 Re: Upgrade Debian CI image from Bookworm to Trixie