postgres.git / summary / log / commit / refs
commit 8c7a8e19bb17e0634e21ee8edbb912dc4deb5cb0
Author: Thomas Munro <tmunro@postgresql.org>
Date: Mon May 06 03:02:41 2019 +0000
First released in: 12.0, 9.6.14, 10.9, 11.4
Probe only 127.0.0.1 when looking for ports on Unix.
Commit c0985099, later adjusted by commit 4ab02e81, probed 0.0.0.0
in addition to 127.0.0.1, for the benefit of Windows build farm
animals. It isn't really useful on Unix systems, and turned out to
be a bit inconvenient to users of some corporate firewall software.
Switch back to probing just 127.0.0.1 on non-Windows systems.
Back-patch to 9.6, like the earlier changes.
Discussion: https://postgr.es/m/CA%2BhUKG%2B21EPwfgs4m%2BtqyRtbVqkOUvP8QQ8sWk9%2Bh55Aub1H3A%40mail.gmail.com
src/test/perl/PostgresNode.pm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm
index 10bfa76669e..f502f698274 100644
--- a/src/test/perl/PostgresNode.pm
+++ b/src/test/perl/PostgresNode.pm
@@ -991,14 +991,15 @@ sub get_new_node
# This seems like a good idea on Unixen as well, even though we don't
# ask the postmaster to open a TCP port on Unix. On Non-Linux,
# non-Windows kernels, binding to 127.0.0.1/24 addresses other than
- # 127.0.0.1 fails with EADDRNOTAVAIL.
+ # 127.0.0.1 might fail with EADDRNOTAVAIL. Binding to 0.0.0.0 is
+ # unnecessary on non-Windows systems.
#
# XXX A port available now may become unavailable by the time we start
# the postmaster.
if ($found == 1)
{
- foreach my $addr (qw(127.0.0.1 0.0.0.0),
- $use_tcp ? qw(127.0.0.2 127.0.0.3) : ())
+ foreach my $addr (qw(127.0.0.1),
+ $use_tcp ? qw(127.0.0.2 127.0.0.3 0.0.0.0) : ())
{
can_bind($addr, $port) or $found = 0;
}
[parent: 9e078fed21a0]