Fix inappropriate printing of never-measured times in EXPLAIN.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: ceb005319ac36fe28e252b13d24de6cb857d5943
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2016-08-12T16:13:04Z
Releases: 9.2.19
Fix inappropriate printing of never-measured times in EXPLAIN.

EXPLAIN (ANALYZE, TIMING OFF) would print an elapsed time of zero for
a trigger function, because no measurement has been taken but it printed
the field anyway.  This isn't what EXPLAIN does elsewhere, so suppress it.

In the same vein, EXPLAIN (ANALYZE, BUFFERS) with non-text output format
would print buffer I/O timing numbers even when no measurement has been
taken because track_io_timing is off.  That seems not per policy, either,
so change it.

Back-patch to 9.2 where these features were introduced.

Maksim Milyutin

Discussion: <081c0540-ecaa-bd29-3fd2-6358f3b359a9@postgrespro.ru>

Files

PathChange+/−
src/backend/commands/explain.c modified +13 −5