pgsql: pgbench: Fix assertion failure with retriable errors in pipeline - Mailing list pgsql-committers

From Fujii Masao
Subject pgsql: pgbench: Fix assertion failure with retriable errors in pipeline
Date
Msg-id E1v27Wq-000AVe-2A@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
pgbench: Fix assertion failure with retriable errors in pipeline mode.

When running pgbench with --verbose-errors option and a custom script that
triggered retriable errors (e.g., serialization errors) in pipeline mode,
an assertion failure could occur:

    Assertion failed: (sql_script[st->use_file].commands[st->command]->type == 1), function commandError, file
pgbench.c,line 3062. 

The failure happened because pgbench assumed these errors would only occur
during SQL commands, but in pipeline mode they can also happen during
\endpipeline meta command.

This commit fixes the assertion failure by adjusting the assertion check to
allow such errors during either SQL commands or \endpipeline.

Backpatch to v15, where the assertion check was introduced.

Author: Yugo Nagata <nagata@sraoss.co.jp>
Reviewed-by: Fujii Masao <masao.fujii@gmail.com>
Discussion: https://postgr.es/m/CAHGQGwGWQMOzNkQs-LmpDHdNC0h8dmAuUMRvZrEntQi5a-b=Kg@mail.gmail.com

Branch
------
REL_17_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/f39d9164b70a8ead8e1b6847f067532b784bbf0e

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


pgsql-committers by date:

Previous
From: Fujii Masao
Date:
Subject: pgsql: pgbench: Fix assertion failure with retriable errors in pipeline
Next
From: Fujii Masao
Date:
Subject: pgsql: pgbench: Fix assertion failure with retriable errors in pipeline