Thread: pgsql: Abort pgbench if script end is reached with an open pipeline

pgsql: Abort pgbench if script end is reached with an open pipeline

From
Alvaro Herrera
Date:
Abort pgbench if script end is reached with an open pipeline

When a pipeline is opened with \startpipeline and not closed, pgbench
will either error on the next transaction with a "already in pipeline
mode" error or successfully end if this was the last transaction --
despite not sending anything that was piped in the pipeline.

Make it an error to reach end of script is reached while there's an
open pipeline.

Backpatch to 14, where pgbench got support for pipelines.

Author: Anthonin Bonnefoy <anthonin.bonnefoy@datadoghq.com>
Reported-by: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/Za4IObZkDjrO4TcS@paquier.xyz

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/07b53de700390c8bdee99ce373d84f0cdcad74d6

Modified Files
--------------
src/bin/pgbench/pgbench.c                    | 15 +++++++++++++--
src/bin/pgbench/t/001_pgbench_with_server.pl | 28 ++++++++++++++++++++++++++++
2 files changed, 41 insertions(+), 2 deletions(-)