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_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/3fd36be52b70b95eea6fe7d296ce871f49eedb50

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(-)