aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNoah Misch <noah@leadboat.com>2015-09-03 00:29:11 -0400
committerNoah Misch <noah@leadboat.com>2015-09-03 00:29:43 -0400
commit8d60549d6d39fbc1501f11a31f007c36975891e8 (patch)
tree0bfb6f94066f22e9edbf3ee458ac59407ce6c95e /src
parente2e78acccaa94e7d64dc2bc0b124cfcf23520918 (diff)
downloadpostgresql-8d60549d6d39fbc1501f11a31f007c36975891e8.tar.gz
postgresql-8d60549d6d39fbc1501f11a31f007c36975891e8.zip
Disable fsync throughout TAP test suites.
Most suites already did so via start_test_server(), but the pg_rewind, pg_ctl and pg_controldata suites ran a postmaster or initdb with fsync enabled. This halves the pg_rewind suite's runtime on buildfarm member tern. It makes tern and that machine's other buildfarm members less vulnerable to noise failures from postmaster startup overrunning the 60s pg_ctl timeout. Back-patch to 9.5, where pg_rewind was introduced.
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_controldata/t/001_pg_controldata.pl2
-rw-r--r--src/bin/pg_ctl/t/001_start_stop.pl4
-rw-r--r--src/test/perl/TestLib.pm7
3 files changed, 10 insertions, 3 deletions
diff --git a/src/bin/pg_controldata/t/001_pg_controldata.pl b/src/bin/pg_controldata/t/001_pg_controldata.pl
index e36fa2d45d9..e2b0d420a23 100644
--- a/src/bin/pg_controldata/t/001_pg_controldata.pl
+++ b/src/bin/pg_controldata/t/001_pg_controldata.pl
@@ -11,6 +11,6 @@ program_options_handling_ok('pg_controldata');
command_fails(['pg_controldata'], 'pg_controldata without arguments fails');
command_fails([ 'pg_controldata', 'nonexistent' ],
'pg_controldata with nonexistent directory fails');
-system_or_bail 'initdb', '-D', "$tempdir/data", '-A', 'trust';
+standard_initdb "$tempdir/data";
command_like([ 'pg_controldata', "$tempdir/data" ],
qr/checkpoint/, 'pg_controldata produces output');
diff --git a/src/bin/pg_ctl/t/001_start_stop.pl b/src/bin/pg_ctl/t/001_start_stop.pl
index bcceb57d7bc..ff9a0959284 100644
--- a/src/bin/pg_ctl/t/001_start_stop.pl
+++ b/src/bin/pg_ctl/t/001_start_stop.pl
@@ -13,7 +13,8 @@ program_options_handling_ok('pg_ctl');
command_exit_is([ 'pg_ctl', 'start', '-D', "$tempdir/nonexistent" ],
1, 'pg_ctl start with nonexistent directory');
-command_ok([ 'pg_ctl', 'initdb', '-D', "$tempdir/data" ], 'pg_ctl initdb');
+command_ok([ 'pg_ctl', 'initdb', '-D', "$tempdir/data", '-o', '-N' ],
+ 'pg_ctl initdb');
command_ok(
[ "$ENV{top_builddir}/src/test/regress/pg_regress", '--config-auth',
"$tempdir/data" ],
@@ -21,6 +22,7 @@ command_ok(
open CONF, ">>$tempdir/data/postgresql.conf";
print CONF "listen_addresses = ''\n";
print CONF "unix_socket_directories = '$tempdir_short'\n";
+print CONF "fsync = off\n";
close CONF;
command_ok([ 'pg_ctl', 'start', '-D', "$tempdir/data", '-w' ],
'pg_ctl start -w');
diff --git a/src/test/perl/TestLib.pm b/src/test/perl/TestLib.pm
index 5ef95f0246e..9402e4462c3 100644
--- a/src/test/perl/TestLib.pm
+++ b/src/test/perl/TestLib.pm
@@ -123,6 +123,11 @@ sub standard_initdb
system_or_bail('initdb', '-D', "$pgdata", '-A' , 'trust', '-N');
system_or_bail("$ENV{top_builddir}/src/test/regress/pg_regress",
'--config-auth', $pgdata);
+
+ open CONF, ">>$pgdata/postgresql.conf";
+ print CONF "\n# Added by TestLib.pm)\n";
+ print CONF "fsync = off\n";
+ close CONF;
}
my ($test_server_datadir, $test_server_logfile);
@@ -138,7 +143,7 @@ sub start_test_server
standard_initdb "$tempdir/pgdata";
$ret = system_log('pg_ctl', '-D', "$tempdir/pgdata", '-w', '-l',
"$log_path/postmaster.log", '-o',
-"--fsync=off -k \"$tempdir_short\" --listen-addresses='' --log-statement=all",
+"-k \"$tempdir_short\" --listen-addresses='' --log-statement=all",
'start');
if ($ret != 0)
{