]> granicus.if.org Git - postgresql/commitdiff
Fix incorrect tps number calculation in "excluding connections establishing".
authorTatsuo Ishii <ishii@postgresql.org>
Wed, 30 Sep 2015 01:36:23 +0000 (10:36 +0900)
committerTatsuo Ishii <ishii@postgresql.org>
Wed, 30 Sep 2015 01:53:31 +0000 (10:53 +0900)
The tolerance (larger than actual tps number) increases as the number
of threads decreases.  The bug has been there since the thread support
was introduced in 9.0. Because back patching introduces incompatible
behavior changes regarding the tps number, the fix is committed to
master and 9.5 stable branches only.

Problem spotted by me and fix proposed by Fabien COELHO. Note that his
original patch included more than fixes (a code re-factoring) which is
not related to the problem and I omitted the part.

src/bin/pgbench/pgbench.c

index 6ae1b869dd4f9b89374c953704a36647c7bd767e..f2d435b19804bfb444a1282964e6e23e335f1eaf 100644 (file)
@@ -2616,7 +2616,7 @@ printResults(int ttype, int64 normal_xacts, int nclients,
        time_include = INSTR_TIME_GET_DOUBLE(total_time);
        tps_include = normal_xacts / time_include;
        tps_exclude = normal_xacts / (time_include -
-                                               (INSTR_TIME_GET_DOUBLE(conn_total_time) / nthreads));
+                                               (INSTR_TIME_GET_DOUBLE(conn_total_time) / nclients));
 
        if (ttype == 0)
                s = "TPC-B (sort of)";