aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNoah Misch <noah@leadboat.com>2020-11-28 21:52:27 -0800
committerNoah Misch <noah@leadboat.com>2020-11-28 21:52:27 -0800
commit0f89ca083bbf71641cf61b4b951d6b30a2fd978b (patch)
treecaf11aa3de383c488cc17afd118256c2a9f33c2c /src
parentb90a7fe15f78b1e2513cbcb27a33f4adc47bcd3d (diff)
downloadpostgresql-0f89ca083bbf71641cf61b4b951d6b30a2fd978b.tar.gz
postgresql-0f89ca083bbf71641cf61b4b951d6b30a2fd978b.zip
Retry initial slurp_file("current_logfiles"), in test 004_logrotate.pl.
Buildfarm member topminnow failed when the test script attempted this before the syslogger would have created the file. Back-patch to v12, which introduced the test.
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_ctl/t/004_logrotate.pl17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/bin/pg_ctl/t/004_logrotate.pl b/src/bin/pg_ctl/t/004_logrotate.pl
index acaade8d812..bc39abd23e4 100644
--- a/src/bin/pg_ctl/t/004_logrotate.pl
+++ b/src/bin/pg_ctl/t/004_logrotate.pl
@@ -21,7 +21,19 @@ $node->start();
$node->psql('postgres', 'SELECT 1/0');
-my $current_logfiles = slurp_file($node->data_dir . '/current_logfiles');
+# might need to retry if logging collector process is slow...
+my $max_attempts = 180 * 10;
+
+my $current_logfiles;
+for (my $attempts = 0; $attempts < $max_attempts; $attempts++)
+{
+ eval {
+ $current_logfiles = slurp_file($node->data_dir . '/current_logfiles');
+ };
+ last unless $@;
+ usleep(100_000);
+}
+die $@ if $@;
note "current_logfiles = $current_logfiles";
@@ -34,9 +46,6 @@ my $lfname = $current_logfiles;
$lfname =~ s/^stderr //;
chomp $lfname;
-# might need to retry if logging collector process is slow...
-my $max_attempts = 180 * 10;
-
my $first_logfile;
for (my $attempts = 0; $attempts < $max_attempts; $attempts++)
{