Re: abstract Unix-domain sockets
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-11-12T07:12:09Z
Lists: pgsql-hackers
On Wed, Nov 11, 2020 at 01:39:17PM +0100, Peter Eisentraut wrote: > Thinking about it further, I think the hint in the Unix-domain socket case > is bogus. A socket in the file-system namespace never reports EADDRINUSE > anyway, it just overwrites the file. For sockets in the abstract namespace, > you can get this error, but of course there is no file to remove. > > Perhaps we should change the hint in both the Unix and the IP cases to: > > "Is another postmaster already running at this address?" > (This also resolves the confusing reference to "port" in the Unix case.) Er, it is perfectly possible for two postmasters to use the same unix socket path, abstract or not, as long as they listen to different ports (all nodes in a single TAP test do that for example). So we should keep a reference to the port used in the log message, no? > Or we just drop the hint in the Unix case. The primary error message is > clear enough. Dropping the hint for the abstract case sounds fine to me. -- Michael
Commits
-
Add support for abstract Unix-domain sockets
- c9f0624bc2f5 14.0 landed
-
Make error hint from bind() failure more accurate
- d5d91acdccae 14.0 landed
-
Remove obsolete ifdefs
- 555eb1a4f011 14.0 landed