Re: BUG #18961: Race scenario where max_standby_streaming_delay is not honored

Anthony Hsu <erwaman@gmail.com>

From: Anthony Hsu <erwaman@gmail.com>
To: Dilip Kumar <dilipbalaut@gmail.com>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2025-07-10T22:36:34Z
Lists: pgsql-bugs
Simplified my patch and posted it on pgsql-hackers here:
https://www.postgresql.org/message-id/flat/CALQc50gi-Kw9m1r6hytf12473-fCECy%3Dq9JtKS4ANeJFEyCBTw%40mail.gmail.com

On Sun, Jun 29, 2025 at 8:28 PM Dilip Kumar <dilipbalaut@gmail.com> wrote:

> On Sun, Jun 29, 2025 at 5:07 AM Anthony Hsu <erwaman@gmail.com> wrote:
> >
> > Made a few changes to my patch and attached a new version. Changes
> include:
> >
> > * avoid sending PROCSIG_RECOVERY_CONFLICT_BUFFERPIN in a tight loop
> after standby limit is reached by adding a small sleep after each send,
> starting at 1ms and doubling each time up to 1s (similar to what's done in
> WaitExceedsMaxStandbyDelay here [1]). Sleep time is reset in
> LockBufferForCleanup once cleanup lock is successfully acquired
> > * don't set deadlock timeout once standby limit has passed since after
> that, the standby timeout will fire immediately, so no need to set deadlock
> timeout as well
> >
> > Let me know if you have any thoughts or comments. I am thinking of
> sending it to pgsql-hackers soon.
>
> I haven't got time to look into your new patch, feel free to start a
> thread in pgsql-hackers, I can review it there once I get time,
> thanks.
>
>
> --
> Regards,
> Dilip Kumar
> Google
>

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Message style improvements

  2. Correct list of files in src/backend/lib/README

  3. Fix re-distributing previously distributed invalidation messages during logical decoding.