aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2018-10-16 12:27:14 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2018-10-16 12:27:26 -0400
commit5f920def84a0df35e3a455068ba0ee0df0f45493 (patch)
tree3b343e16f5e986182e61b4c3dc0c079d76616f4c
parent6d2c760b059e4f16e2176fcfea6068d58cc3bf30 (diff)
downloadpostgresql-5f920def84a0df35e3a455068ba0ee0df0f45493.tar.gz
postgresql-5f920def84a0df35e3a455068ba0ee0df0f45493.zip
Make PostgresNode.pm's poll_query_until() more chatty about failures.
Reporting only the stderr is unhelpful when the problem is that the server output we're getting doesn't match what was expected. So we should report the query output too; and just for good measure, let's print the query we used and the output we expected. Back-patch to 9.5 where poll_query_until was introduced. Discussion: https://postgr.es/m/17913.1539634756@sss.pgh.pa.us
-rw-r--r--src/test/perl/PostgresNode.pm15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm
index e60673ad723..044b07790c5 100644
--- a/src/test/perl/PostgresNode.pm
+++ b/src/test/perl/PostgresNode.pm
@@ -1348,9 +1348,18 @@ sub poll_query_until
$attempts++;
}
- # The query result didn't change in 180 seconds. Give up. Print the stderr
- # from the last attempt, hopefully that's useful for debugging.
- diag $stderr;
+ # The query result didn't change in 180 seconds. Give up. Print the
+ # output from the last attempt, hopefully that's useful for debugging.
+ chomp($stderr);
+ $stderr =~ s/\r//g if $TestLib::windows_os;
+ diag qq(poll_query_until timed out executing this query:
+$query
+expecting this output:
+$expected
+last actual query output:
+$stdout
+with stderr:
+$stderr);
return 0;
}