Specify --host in 027_stream_regress.pl's pg_regress invocation.
authorAndres Freund <andres@anarazel.de>
Thu, 27 Jan 2022 22:38:44 +0000 (14:38 -0800)
committerAndres Freund <andres@anarazel.de>
Thu, 27 Jan 2022 22:49:57 +0000 (14:49 -0800)
The invocation of pg_regress in 027_stream_regress.pl didn't specify the
host. It ends up working on most systems because of connection
defaults. However, on windows it makes the test very slow unless
PG_TEST_USE_UNIX_SOCKETS is used.

The problem is that windows resolves "localhost" to ::0, 127.0.0.1, the server
started only listens on 127.0.0.1.  On windows refused TCP connections are
internally retried a few times, with back-off between tries, taking at least 2
seconds.

Noticed while investigating a complaint about the test's slow speed by Andrew
Dunstan.

Discussion: https://postgr.es/m/20220127220351.kyp3bdaukfytmoqx@alap3.anarazel.de

src/test/recovery/t/027_stream_regress.pl

index 0596980b1a6daffe5b05c433377deca867bbc81d..782f24b429fa1e2a111cfb41143ecb76d77371d3 100644 (file)
@@ -58,6 +58,7 @@ my $extra_opts = $ENV{EXTRA_REGRESS_OPTS} || "";
 system_or_bail($ENV{PG_REGRESS} . " $extra_opts " .
               "--dlpath=\"$dlpath\" " .
               "--bindir= " .
+              "--host=" . $node_primary->host . " " .
               "--port=" . $node_primary->port . " " .
               "--schedule=../regress/parallel_schedule " .
               "--max-concurrent-tests=20 " .