From: Noah Misch Date: Tue, 11 Dec 2018 04:15:42 +0000 (-0800) Subject: Raise some timeouts to 180s, in test code. X-Git-Tag: REL_12_BETA1~1085 X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=1db439ad49255d8fb0371cc7166cdc33f6b3fdf3;p=postgresql.git Raise some timeouts to 180s, in test code. Slow runs of buildfarm members chipmunk, hornet and mandrill saw the shorter timeouts expire. The 180s timeout in poll_query_until has been trouble-free since 2a0f89cd717ce6d49cdc47850577823682167e87 introduced it two years ago, so use 180s more widely. Back-patch to 9.6, where the first of these timeouts was introduced. Reviewed by Michael Paquier. Discussion: https://postgr.es/m/20181209001601.GC2973271@rfd.leadboat.com --- diff --git a/src/test/isolation/README b/src/test/isolation/README index bea278a856f..780b6dca1b8 100644 --- a/src/test/isolation/README +++ b/src/test/isolation/README @@ -108,8 +108,8 @@ Each step may contain commands that block until further action has been taken deadlock). A test that uses this ability must manually specify valid permutations, i.e. those that would not expect a blocked session to execute a command. If a test fails to follow that rule, isolationtester will cancel it -after 60 seconds. If the cancel doesn't work, isolationtester will exit -uncleanly after a total of 75 seconds of wait time. Testing invalid +after 180 seconds. If the cancel doesn't work, isolationtester will exit +uncleanly after a total of 200 seconds of wait time. Testing invalid permutations should be avoided because they can make the isolation tests take a very long time to run, and they serve no useful testing purpose. diff --git a/src/test/isolation/isolationtester.c b/src/test/isolation/isolationtester.c index 7df67da333c..9134b0505eb 100644 --- a/src/test/isolation/isolationtester.c +++ b/src/test/isolation/isolationtester.c @@ -783,15 +783,15 @@ try_complete_step(Step *step, int flags) td += (int64) current_time.tv_usec - (int64) start_time.tv_usec; /* - * After 60 seconds, try to cancel the query. + * After 180 seconds, try to cancel the query. * * If the user tries to test an invalid permutation, we don't want * to hang forever, especially when this is running in the - * buildfarm. So try to cancel it after a minute. This will - * presumably lead to this permutation failing, but remaining - * permutations and tests should still be OK. + * buildfarm. This will presumably lead to this permutation + * failing, but remaining permutations and tests should still be + * OK. */ - if (td > 60 * USECS_PER_SEC && !canceled) + if (td > 180 * USECS_PER_SEC && !canceled) { PGcancel *cancel = PQgetCancel(conn); @@ -808,15 +808,15 @@ try_complete_step(Step *step, int flags) } /* - * After 75 seconds, just give up and die. + * After 200 seconds, just give up and die. * * Since cleanup steps won't be run in this case, this may cause * later tests to fail. That stinks, but it's better than waiting * forever for the server to respond to the cancel. */ - if (td > 75 * USECS_PER_SEC) + if (td > 200 * USECS_PER_SEC) { - fprintf(stderr, "step %s timed out after 75 seconds\n", + fprintf(stderr, "step %s timed out after 200 seconds\n", step->name); exit_nicely(); } diff --git a/src/test/recovery/t/006_logical_decoding.pl b/src/test/recovery/t/006_logical_decoding.pl index 884b0aedd1e..c23cc4dda76 100644 --- a/src/test/recovery/t/006_logical_decoding.pl +++ b/src/test/recovery/t/006_logical_decoding.pl @@ -72,7 +72,7 @@ my $endpos = $node_master->safe_psql('postgres', print "waiting to replay $endpos\n"; my $stdout_recv = $node_master->pg_recvlogical_upto( - 'postgres', 'test_slot', $endpos, 10, + 'postgres', 'test_slot', $endpos, 180, 'include-xids' => '0', 'skip-empty-xacts' => '1'); chomp($stdout_recv); @@ -84,7 +84,7 @@ $node_master->poll_query_until('postgres', ) or die "slot never became inactive"; $stdout_recv = $node_master->pg_recvlogical_upto( - 'postgres', 'test_slot', $endpos, 10, + 'postgres', 'test_slot', $endpos, 180, 'include-xids' => '0', 'skip-empty-xacts' => '1'); chomp($stdout_recv); diff --git a/src/test/recovery/t/010_logical_decoding_timelines.pl b/src/test/recovery/t/010_logical_decoding_timelines.pl index 4fbd386332a..e582b200050 100644 --- a/src/test/recovery/t/010_logical_decoding_timelines.pl +++ b/src/test/recovery/t/010_logical_decoding_timelines.pl @@ -183,7 +183,7 @@ my $endpos = $node_replica->safe_psql('postgres', $stdout = $node_replica->pg_recvlogical_upto( 'postgres', 'before_basebackup', - $endpos, 30, + $endpos, 180, 'include-xids' => '0', 'skip-empty-xacts' => '1');