]> granicus.if.org Git - postgresql/commit
Fix some subtle problems in pgbench transaction stats counting.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 4 Sep 2017 20:24:08 +0000 (16:24 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 4 Sep 2017 20:24:08 +0000 (16:24 -0400)
commitc23bb6badfa2048d17c08ebcfd81adf942292e51
treeb01788f615e04376dcf0fc049657a65e14761306
parent9d36a386608d7349964e76120e48987e3ec67d04
Fix some subtle problems in pgbench transaction stats counting.

With --latency-limit, transactions might get skipped even beyond the
transaction count limit specified by -t, throwing off the expected
number of transactions and thus the denominator for later stats.
Be sure to stop skipping transactions once -t is reached.

Also, include skipped transactions in the "cnt" fields; this requires
discounting them again in a couple of places, but most places are
better off with this definition.  In particular this is needed to
get correct overall stats for the combination of -R/-L/-t options.
Merge some more processing into processXactStats() to simplify this.

In passing, add a check that --progress-timestamp is specified only
when --progress is.

We might consider back-patching this, but given that it only matters
for a combination of options, and given the lack of field complaints,
consensus seems to be not to bother.

Fabien Coelho, reviewed by Nikolay Shaplov

Discussion: https://postgr.es/m/alpine.DEB.2.20.1704171422500.4025@lancre
src/bin/pgbench/pgbench.c