Make sure to run pg_isready on correct port

The current code can have pg_isready unexpectedly succeed if there is a
server running on the default port. To avoid this we delay running the
test until after a node has been created but before it starts, and then
use that node's port, so we are fairly sure there is nothing running on
the port.

Backpatch to all live branches.
This commit is contained in:
Andrew Dunstan 2024-07-12 18:29:15 -04:00
parent a8458f508a
commit 055891f374
1 changed files with 3 additions and 2 deletions

View File

@ -12,10 +12,11 @@ program_help_ok('pg_isready');
program_version_ok('pg_isready');
program_options_handling_ok('pg_isready');
command_fails(['pg_isready'], 'fails with no server running');
my $node = PostgreSQL::Test::Cluster->new('main');
$node->init;
$node->command_fails(['pg_isready'], 'fails with no server running');
$node->start;
$node->command_ok(