• Tom Lane's avatar
    Uniformly identify the target host in libpq connection failure reports. · 52a10224
    Tom Lane authored
    Prefix "could not connect to host-or-socket-path:" to all connection
    failure cases that occur after the socket() call, and remove the
    ad-hoc server identity data that was appended to a few of these
    messages.  This should produce much more intelligible error reports
    in multiple-target-host situations, especially for error cases that
    are off the beaten track to any degree (because none of those provided
    any server identity info).
    
    As an example of the change, formerly a connection attempt with a bad
    port number such as "psql -p 12345 -h localhost,/tmp" might produce
    
    psql: error: could not connect to server: Connection refused
            Is the server running on host "localhost" (::1) and accepting
            TCP/IP connections on port 12345?
    could not connect to server: Connection refused
            Is the server running on host "localhost" (127.0.0.1) and accepting
            TCP/IP connections on port 12345?
    could not connect to server: No such file or directory
            Is the server running locally and accepting
            connections on Unix domain socket "/tmp/.s.PGSQL.12345"?
    
    Now it looks like
    
    psql: error: could not connect to host "localhost" (::1), port 12345: Connection refused
            Is the server running on that host and accepting TCP/IP connections?
    could not connect to host "localhost" (127.0.0.1), port 12345: Connection refused
            Is the server running on that host and accepting TCP/IP connections?
    could not connect to socket "/tmp/.s.PGSQL.12345": No such file or directory
            Is the server running locally and accepting connections on that socket?
    
    This requires adjusting a couple of regression tests to allow for
    variation in the contents of a connection failure message.
    
    Discussion: https://postgr.es/m/BN6PR05MB3492948E4FD76C156E747E8BC9160@BN6PR05MB3492.namprd05.prod.outlook.com
    52a10224
002_pg_dump.pl 104 KB