pgbench: Improve result outputs related to failed transactions.
authorTatsuo Ishii <ishii@postgresql.org>
Fri, 11 Oct 2024 04:40:23 +0000 (13:40 +0900)
committerTatsuo Ishii <ishii@postgresql.org>
Fri, 11 Oct 2024 04:40:23 +0000 (13:40 +0900)
commitcae0f3c40554e85cd004732f3f57b9cb936136d2
tree9761fb4e9abf97f56c2c460add29e2a72d4e5972
parent161320b4b960ee4fe918959be6529ae9b106ea5a
pgbench: Improve result outputs related to failed transactions.

Previously, per-script statistics were never output when all
transactions failed due to serialization or deadlock errors.  However,
it is reasonable to report such information if there are ones even
when there are no successful transaction since these failed
transactions are now objects to be reported.

Meanwhile, if the total number of successful, skipped, and failed
transactions is zero, we don't have to report the number of failed
transactions as similar to the number of skipped transactions, which
avoids to print "NaN%" in lines on failed transaction reports.

Also, the number of transactions in per-script results now includes
skipped and failed transactions. It prevents to print "total of NaN%"
when any transactions are not successfully processed. The number of
transactions actually processed per-script and TPS based on it are now
output explicitly in a separate line.

Author: Yugo Nagata
Reviewed-by: Tatsuo Ishii
Discussion: https://postgr.es/m/20240921003544.2436ef8da9c5c8cb963c651b%40sraoss.co.jp
src/bin/pgbench/pgbench.c