diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2020-12-24 21:37:46 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2020-12-24 21:37:46 -0500 |
commit | 5c31afc49d0b62b357218b6f8b01782509ef8acd (patch) | |
tree | 4bf052c7421af51a462fb1f7a84fe8c85a21e844 /src | |
parent | 558a6e8e21367dae9a294291337be10a8a4afd0a (diff) | |
download | postgresql-5c31afc49d0b62b357218b6f8b01782509ef8acd.tar.gz postgresql-5c31afc49d0b62b357218b6f8b01782509ef8acd.zip |
Avoid time-of-day-dependent failure in log rotation test.
Buildfarm members pogona and petalura have shown a failure when
pg_ctl/t/004_logrotate.pl starts just before local midnight.
The default rotate-at-midnight behavior occurs just before the
Perl script examines current_logfiles, so it figures that the
rotation it's already requested has occurred ... but in reality,
that rotation happens just after it looks, so the expected new
log data goes into a different file than the one it's examining.
In HEAD, src/test/kerberos/t/001_auth.pl has acquired similar code
that evidently has a related failure mode. Besides being quite new,
few buildfarm critters run that test, so it's unsurprising that
we've not yet seen a failure there.
Fix both cases by setting log_rotation_age = 0 so that no time-based
rotation can occur. Also absorb 004_logrotate.pl's decision to
set lc_messages = 'C' into the kerberos test, in hopes that it will
work in non-English prevailing locales.
Report: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=pogona&dt=2020-12-24%2022%3A10%3A04
Report: https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=petalura&dt=2020-02-01%2022%3A20%3A04
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/pg_ctl/t/004_logrotate.pl | 2 | ||||
-rw-r--r-- | src/test/kerberos/t/001_auth.pl | 14 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/bin/pg_ctl/t/004_logrotate.pl b/src/bin/pg_ctl/t/004_logrotate.pl index bc39abd23e4..2f381e556ec 100644 --- a/src/bin/pg_ctl/t/004_logrotate.pl +++ b/src/bin/pg_ctl/t/004_logrotate.pl @@ -12,6 +12,8 @@ $node->init(); $node->append_conf( 'postgresql.conf', qq( logging_collector = on +# these ensure stability of test results: +log_rotation_age = 0 lc_messages = 'C' )); diff --git a/src/test/kerberos/t/001_auth.pl b/src/test/kerberos/t/001_auth.pl index e58e69b4978..4b03ff561d5 100644 --- a/src/test/kerberos/t/001_auth.pl +++ b/src/test/kerberos/t/001_auth.pl @@ -163,10 +163,16 @@ note "setting up PostgreSQL instance"; my $node = get_new_node('node'); $node->init; -$node->append_conf('postgresql.conf', "listen_addresses = '$hostaddr'"); -$node->append_conf('postgresql.conf', "krb_server_keyfile = '$keytab'"); -$node->append_conf('postgresql.conf', "logging_collector = on"); -$node->append_conf('postgresql.conf', "log_connections = on"); +$node->append_conf( + 'postgresql.conf', qq{ +listen_addresses = '$hostaddr' +krb_server_keyfile = '$keytab' +logging_collector = on +log_connections = on +# these ensure stability of test results: +log_rotation_age = 0 +lc_messages = 'C' +}); $node->start; $node->safe_psql('postgres', 'CREATE USER test1;'); |