Hello
* patched with minor warning
* compilable cleanly
* zero impact on PostgreSQL server functionality
* it does what was in proposal
** change 5sec progress as default (instead no progress)
** finalise a rate limit support - fixes a latency calculation
* code is clean
* documentation is included
* there is no voices against this patch and this patch increases a pgbench usability/
I have only one question. When I tested this patch with throttling I got a very similar values of lag.
[pavel@localhost ~]$ /usr/local/pgsql/bin/pgbench -T100 -j4 -c32 postgres -R 60
starting vacuum...end.
progress: 5.0 s, 61.3 tps, 15.796 +- 11.287 ms lat, 0.118 ms lag
progress: 10.0 s, 60.8 tps, 16.527 +- 12.965 ms lat, 0.120 ms lag
[pavel@localhost ~]$ /usr/local/pgsql/bin/pgbench -T100 -j4 -c32 postgres -R 80
starting vacuum...end.
progress: 5.0 s, 78.8 tps, 17.009 +- 11.666 ms lat, 0.163 ms lag
progress: 10.1 s, 74.3 tps, 33.510 +- 55.456 ms lat, 0.092 ms lag
[pavel@localhost ~]$ /usr/local/pgsql/bin/pgbench -T100 -j4 -c32 postgres -R 40
starting vacuum...end.
progress: 5.2 s, 39.4 tps, 13.580 +- 10.283 ms lat, 0.182 ms lag
progress: 10.1 s, 49.3 tps, 13.192 +- 6.772 ms lat, 0.135 ms lag
What is sense, or what is semantic of this value? It is not detailed documented. Should be printed this value in this form on every row? We can print some warning when lag is higher than latency instead? Or we can use this value, but it should be better documented, please.