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

From: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
To: Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>
Cc: Rintaro Ikeda <ikedarintarof(at)oss(dot)nttdata(dot)com>, Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>, Jakub Wartak <jakub(dot)wartak(at)enterprisedb(dot)com>, "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>, "slpmcf(at)gmail(dot)com" <slpmcf(at)gmail(dot)com>, "boekewurm+postgres(at)gmail(dot)com" <boekewurm+postgres(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Srinath Reddy Sadipiralla <srinath2133(at)gmail(dot)com>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>
Subject: Re: Suggestion to add --continue-client-on-abort option to pgbench
Date: 2025-11-11 16:47:37
Message-ID: CAHGQGwGHqwD+wvuyDSsee6b80wxj6P3=QbBRfhDMxap43yd8sg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Nov 11, 2025 at 11:49 AM Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com> wrote:
> I just did more tests on both pipeline mode and non-pipeline mode, I think the main purpose of discardAvailableResults() is to drain results for pipeline mode. In non-pipeline mode, a NULL res indicates no more result to read; while in pipeline mode, when a pipeline is aborted, either a valid result or NULL could still be returned, thus we need to wait until pipeline state switch to PQ_PIPELINE_OK. From this perspective, the current inline comment is correct, but I feel it’s not clear enough.

Thanks for working on this!

After reconsidering, I think the main goal here is to determine whether
the error causes a connection failure after it occurs.

If we can read and discard results without PQstatus() becoming CONNECTION_BAD
either until the end (in non-pipeline mode) or until the first sync point
after an error (in pipeline mode), that means the connection is still alive,
and processing can continue when --continue-on-error is specified.

The current function comments don’t mention this purpose enough,
so seems they should be updated to clarify that.

Regards,

--
Fujii Masao

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Dean Rasheed 2025-11-11 16:59:55 Re: minor error message enhance: print RLS policy name when only one permissive policy exists
Previous Message Nathan Bossart 2025-11-11 16:36:32 Re: another autovacuum scheduling thread