Re: Suggestion to add --continue-client-on-abort option to pgbench

Fujii Masao <masao.fujii@gmail.com>

From: Fujii Masao <masao.fujii@gmail.com>
To: Yugo Nagata <nagata@sraoss.co.jp>
Cc: Jakub Wartak <jakub.wartak@enterprisedb.com>, Rintaro Ikeda <ikedarintarof@oss.nttdata.com>, "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>, "slpmcf@gmail.com" <slpmcf@gmail.com>, "boekewurm+postgres@gmail.com" <boekewurm+postgres@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>, Srinath Reddy Sadipiralla <srinath2133@gmail.com>, Dilip Kumar <dilipbalaut@gmail.com>
Date: 2025-09-18T05:37:29Z
Lists: pgsql-hackers
On Thu, Sep 18, 2025 at 10:22 AM Yugo Nagata <nagata@sraoss.co.jp> wrote:
> That makes sense. How about rewriting this like:
>
>  However, if the --continue-on-error option is specified and the error occurs in
>  an SQL command, the client does not abort and proceeds to the next
>  transaction regardless of the error. These cases are reported as "other failures"
>  in the output. Note that if the error occurs in a meta-command, the client will
>  still abort even when this option is specified.

How about phrasing it like this, based on your version?

----------------------------
A client's run is aborted in case of a serious error; for example, the
connection with the database server was lost or the end of script was reached
without completing the last transaction.  The client also aborts
if a meta-command fails, or if an SQL command fails for reasons other than
serialization or deadlock errors when --continue-on-error is not specified.
With --continue-on-error, the client does not abort on such SQL errors
and instead proceeds to the next transaction.  These cases are reported
as "other failures" in the output.  If the error occurs in a meta-command,
however, the client still aborts even when this option is specified.
----------------------------

Regards,

-- 
Fujii Masao



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. pgbench: Fix assertion failure with multiple \syncpipeline in pipeline mode.

  2. pgbench: Add --continue-on-error option.

  3. Fix "inconsistent DLL linkage" warning on Windows MSVC

  4. pgbench: Fix error reporting in readCommandResponse().

  5. pgbench: Fix assertion failure with retriable errors in pipeline mode.

  6. Allow pgbench to retry in some cases.