On 8/3/19 8:24 AM, Andres Freund wrote: > Hi, > > On 2019-08-03 08:22:29 +0900, Ian Barwick wrote: >> What I came up with shoehorned a stripped-down version of the backend >> config parser into fe_utils and provides a function to modify pg.auto.conf >> in much the same way ALTER SYSTEM does, but with only the basic syntax >> checking provided by the parser of course. And for completeness a >> client utility which can be called by scripts etc. > >> I can clean it up and submit it later for reference (got distracted by other things >> recently) though I don't think it's a particularly good solution due to the >> lack of actual checks for the provided GUCSs (and the implementation >> is ugly anyway); something like what Andres suggests below would be far better. > > I think my main problem with that is that it duplicates a nontrivial > amount of code.
That is indeed part of the ugliness of the implementation.
I agree that duplicate code isn’t good- the goal would be to eliminate the duplication by having it be common code instead of duplicated. We have other code that’s common to the frontend and backend and I don’t doubt that we will have more going forward...