pgsql: pgbench: When using pipelining only do PQconsumeInput() when nec

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: pgbench: When using pipelining only do PQconsumeInput() when nec
Date: 2021-08-05 02:24:10
Message-ID: E1mBT3K-00014L-GG@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

pgbench: When using pipelining only do PQconsumeInput() when necessary.

Up to now we did a PQconsumeInput() for each pipelined query, asking the OS
for more input - which it often won't have, as all results might already have
been sent. That turns out to have a noticeable performance impact.

Alvaro Herrera reviewed the idea to add the PQisBusy() check, but not this
concrete patch.

Author: Andres Freund <andres(at)anarazel(dot)de>
Discussion: https://postgr.es/m/20210720180039.23rivhdft3l4mayn@alap3.anarazel.de
Backpatch: 14, where libpq/pgbench pipelining was introduced.

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/87bff68840d542011ed8f60427502fb90fdf2873

Modified Files
--------------
src/bin/pgbench/pgbench.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2021-08-05 02:24:13 pgsql: pgbench: When using pipelining only do PQconsumeInput() when nec
Previous Message Andres Freund 2021-08-05 02:18:04 pgsql: pgstat: split reporting/fetching of bgwriter and checkpointer st