While working on [1], we find out the inconsistency in PQHost() behavior if the connecting string that is passed to connect to the server contains multiple hosts with both host and hostaddr types. For example,
host=host1,host2 hostaddr=127.0.0.1,127.0.0.1 port=5434,5432 As the hostaddr is given preference when both host and hostaddr is specified, so the connection type for both addresses of the above conninfo is CHT_HOST_ADDRESS. So the PQhost() returns the conn->pghost value i.e "host1,host2" instead of the actual host that is connected. Instead of checking the connection type while returning the host details, it should check whether the host is NULL or not? with this change it returns the expected value for all the connection types. Patch attached. [1] - https://www.postgresql.org/message-id/CAJrrPGeE0zY03phJByjofnN2TV9bSf4fu2yy%3Dv4DyWw_Dj%3DbRQ%40mail.gmail.com Regards, Hari Babu Fujitsu Australia
PQhost-update-to-return-proper-host-details_v2.patch
Description: Binary data