From: Noah Misch Date: Thu, 3 Sep 2015 04:29:11 +0000 (-0400) Subject: Disable fsync throughout TAP test suites. X-Git-Tag: REL9_6_BETA1~1415 X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=7d7a103f41fbdc54e608c431ead866061289307d;p=postgresql.git 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. --- 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 dae47a80135..177a16f7afe 100644 --- a/src/bin/pg_ctl/t/001_start_stop.pl +++ b/src/bin/pg_ctl/t/001_start_stop.pl @@ -14,12 +14,14 @@ 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{PG_REGRESS}, '--config-auth', "$tempdir/data" ], 'configure authentication'); open CONF, ">>$tempdir/data/postgresql.conf"; +print CONF "fsync = off\n"; if (! $windows_os) { print CONF "listen_addresses = ''\n"; diff --git a/src/test/perl/TestLib.pm b/src/test/perl/TestLib.pm index 4927d45d59c..02533ebde53 100644 --- a/src/test/perl/TestLib.pm +++ b/src/test/perl/TestLib.pm @@ -143,6 +143,7 @@ sub standard_initdb open CONF, ">>$pgdata/postgresql.conf"; print CONF "\n# Added by TestLib.pm)\n"; + print CONF "fsync = off\n"; if ($windows_os) { print CONF "listen_addresses = '127.0.0.1'\n"; @@ -189,7 +190,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 --log-statement=all", + "$log_path/postmaster.log", '-o', "--log-statement=all", 'start'); if ($ret != 0)