Re: "unix_socket_directories" should be GUC_LIST_INPUT?
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: Robert Haas <robertmhaas@gmail.com>,
Peter Eisentraut <peter.eisentraut@2ndquadrant.com>,
Ian Lawrence Barwick <barwick@gmail.com>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-11-04T15:47:43Z
Lists: pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes: > Anyway, we have a compatibility problem once we use ALTER SYSTEM. > Just take the following command: > alter system set unix_socket_directories = '/tmp/sock1, /tmp/sock2'; > On HEAD, this would be treated and parsed as two items. However, with > the patch, this becomes one item as this is considered as one single > element of the list of paths, as that's written to > postgresql.auto.conf as '"/tmp/sock1, /tmp/sock2"'. > This last argument would be IMO a reason enough to not do the switch. I do not think that that's a fatal objection. I doubt anyone has applications that are automatically issuing that sort of command and would be broken by a change. I think backwards compatibility is sufficiently met if the behavior remains the same for existing postgresql.conf entries, which AFAICT it would. Arguably, the whole point of doing something here is to make ALTER SYSTEM handle this variable more sensibly. In that context, '/tmp/sock1, /tmp/sock2' *should* be taken as one item IMO. We can't change the behavior without, um, changing the behavior. regards, tom lane
Commits
-
Add GUC_LIST_INPUT and GUC_LIST_QUOTE to unix_socket_directories
- a05dbf477b0e 14.0 landed