postgres.git / summary / log / commit / refs
commit 2ed391f95b34bb88b4d092f0a1d68ce3903df375
Author: Teodor Sigaev <teodor@sigaev.ru>
Date: Fri Mar 24 16:23:13 2017 +0000
Fix pgbench options -C and -R together
The bug is that prior to --rate doCustom was always disconnect/reconnect
without exiting, but with rate it returns if it has to wait. However threadRun
test whether there is a connection before recalling doCustom, so it was never
called.
Bug is not existed in head branch because of refactoring at
12788ae49e1933f463bc59a6efe46c4a01701b76, patch only 9.6
Author: Fabien Coelho
Reviewed-by: me
https://commitfest.postgresql.org/13/970/
src/bin/pgbench/pgbench.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c
index 412f153230c..163dcad137f 100644
--- a/src/bin/pgbench/pgbench.c
+++ b/src/bin/pgbench/pgbench.c
@@ -1967,7 +1967,6 @@ top:
st->listen = false;
st->sleeping = false;
st->throttling = false;
- st->is_throttled = false;
memset(st->prepared, 0, sizeof(st->prepared));
}
@@ -4345,6 +4344,12 @@ threadRun(void *arg)
remains--; /* I've aborted */
}
}
+ else if (is_connect && st->sleeping)
+ {
+ /* it is sleeping for throttling, maybe it is done, let us try */
+ if (!doCustom(thread, st, &aggs))
+ remains--;
+ }
if (st->ecnt > prev_ecnt && commands[st->state]->type == META_COMMAND)
{
[parent: 8de6278d3b7c]