Abort pgbench if script end is reached with an open pipeline
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 22 Jan 2024 16:48:30 +0000 (17:48 +0100)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Mon, 22 Jan 2024 16:48:30 +0000 (17:48 +0100)
commit85ecff891525d61bc975584e2dc2d3c01e5a48ee
tree058d56e89bce32d763c288fe554e6593c3cf5a7c
parentb7e8f27d1478f75a443a4df226f696b8c29e5107
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
src/bin/pgbench/pgbench.c
src/bin/pgbench/t/001_pgbench_with_server.pl