On Fri, Aug 09, 2024 at 04:04:15PM -0400, Tom Lane wrote: > Nathan Bossart <nathandboss...@gmail.com> writes: >> From a couple of quick tests, it looks like setting >> "current_role_is_superuser" directly works. > > Yeah, I had been thinking along the same lines. Here's a draft > patch. (Still needs some attention to nearby comments, and I can't > avoid the impression that the miscinit.c code in this area could > use refactoring.)
Hm. That's a bit more code than I expected. > A problem with this is that it couldn't readily be back-patched > further than v14, since we didn't have ReportChangedGUCOptions > before that. Maybe that doesn't matter; given the lack of > previous complaints, maybe we only need to fix this in HEAD. Another option might be to introduce a new GUC flag or source for anything we want to bypass the check (perhaps with the stipulation that it must also be marked PGC_INTERNAL). I think a new flag would require moving the parallel check down a stanza, but that seems fine. A new source would allow us to limit the damage to specific SetConfigOption() call-sites, but I haven't thought through that idea fully. -- nathan