postgres.git / summary / log / commit / refs

commit    2e75be6660dbaaf2da09b98c54d47c9fe0ac8cfa
Author:   Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:     Thu Jul 30 11:50:51 2015 +0000

    Fix calculation of latency of pgbench backslash commands.
    
    When we loop back to the top of doCustom after processing a backslash
    command, we must reset the "now" timestamp, because that's used to
    calculate the time spent executing the previous command.
    
    Report and fix by Fabien Coelho. Backpatch to 9.5, where this was broken.


src/bin/pgbench/pgbench.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index ceaf14cde16..d48e5b78443 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -1154,11 +1154,12 @@ doCustom(TState *thread, CState *st, instr_time *conn_time, FILE *logfile, AggVa * first time it's needed, and reuse the same value throughout this * function after that. This also ensures that e.g. the calculated latency * reported in the log file and in the totals are the same. Zero means - * "not set yet". + * "not set yet". Reset "now" when we step to the next command with "goto + * top", though. */ +top: INSTR_TIME_SET_ZERO(now); -top: commands = sql_files[st->use_file]; /* [parent: a664d4790e5f]