diff options
author | Noah Misch <noah@leadboat.com> | 2019-05-11 00:22:38 -0700 |
---|---|---|
committer | Noah Misch <noah@leadboat.com> | 2019-05-11 00:24:41 -0700 |
commit | 8dab099bb49c9f8784842c246f04c0e0a0f7c8f9 (patch) | |
tree | edb19e3eece7ce6446ae8dbbe50c05fd7e7960ec /src | |
parent | 0c132d4581c2fc55a96445630eed82458d80d817 (diff) |
Honor TEMP_CONFIG in TAP suites.
The buildfarm client uses TEMP_CONFIG to implement its extra_config
setting. Except for stats_temp_directory, extra_config now applies to
TAP suites; extra_config values seen in the past month are compatible
with this. Back-patch to 9.6, where PostgresNode was introduced, so the
buildfarm can rely on it sooner.
Reviewed by Andrew Dunstan and Tom Lane.
Discussion: https://postgr.es/m/20181229021950.GA3302966@rfd.leadboat.com
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/pg_ctl/t/001_start_stop.pl | 2 | ||||
-rw-r--r-- | src/test/perl/PostgresNode.pm | 13 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/bin/pg_ctl/t/001_start_stop.pl b/src/bin/pg_ctl/t/001_start_stop.pl index cbe99d79ad5..46225971203 100644 --- a/src/bin/pg_ctl/t/001_start_stop.pl +++ b/src/bin/pg_ctl/t/001_start_stop.pl @@ -22,6 +22,8 @@ command_ok([ $ENV{PG_REGRESS}, '--config-auth', "$tempdir/data" ], 'configure authentication'); open CONF, ">>$tempdir/data/postgresql.conf"; print CONF "fsync = off\n"; +print CONF TestLib::slurp_file($ENV{TEMP_CONFIG}) + if defined $ENV{TEMP_CONFIG}; if (!$windows_os) { print CONF "listen_addresses = ''\n"; diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index a53f30cab62..3daf396dbe4 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -419,7 +419,17 @@ sub init print $conf "restart_after_crash = off\n"; print $conf "log_statement = all\n"; print $conf "wal_retrieve_retry_interval = '500ms'\n"; - print $conf "port = $port\n"; + + # If a setting tends to affect whether tests pass or fail, print it after + # TEMP_CONFIG. Otherwise, print it before TEMP_CONFIG, thereby permitting + # overrides. Settings that merely improve performance or ease debugging + # belong before TEMP_CONFIG. + print $conf TestLib::slurp_file($ENV{TEMP_CONFIG}) + if defined $ENV{TEMP_CONFIG}; + + # XXX Neutralize any stats_temp_directory in TEMP_CONFIG. Nodes running + # concurrently must not share a stats_temp_directory. + print $conf "stats_temp_directory = 'pg_stat_tmp'\n"; if ($params{allows_streaming}) { @@ -433,6 +443,7 @@ sub init print $conf "max_connections = 10\n"; } + print $conf "port = $port\n"; if ($use_tcp) { print $conf "unix_socket_directories = ''\n"; |