]> git.ipfire.org Git - thirdparty/postgresql.git/commit
pgbench: When using pipelining only do PQconsumeInput() when necessary.
authorAndres Freund <andres@anarazel.de>
Thu, 5 Aug 2021 02:19:44 +0000 (19:19 -0700)
committerAndres Freund <andres@anarazel.de>
Thu, 5 Aug 2021 02:19:58 +0000 (19:19 -0700)
commitfa604e0dd07a39ba34f93d06ded8243280dffdeb
tree63dcc3400102dc8ffa744276c2c6278341274065
parente8086bd3ba0ab73a18ac2293dd14f488734126ec
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@anarazel.de>
Discussion: https://postgr.es/m/20210720180039.23rivhdft3l4mayn@alap3.anarazel.de
Backpatch: 14, where libpq/pgbench pipelining was introduced.
src/bin/pgbench/pgbench.c