Re: [PATCH] Prevent repeated deadlock-check signals in standby buffer pin waits
JoongHyuk Shin <sjh910805@gmail.com>
From: JoongHyuk Shin <sjh910805@gmail.com>
To: Xuneng Zhou <xunengzhou@gmail.com>
Cc: assam258@gmail.com, Ilmar Yunusov <tanswis42@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2026-06-28T10:05:53Z
Lists: pgsql-hackers
Hi Henson, Thanks for the careful read. Both timeouts can be set in a single SIGALRM, since handle_sig_alarm() fires every timeout that is already due. The if/else order is deliberate. The delay timeout is checked first because the cancel supersedes the deadlock check, so the both-set case resolves to the cancel, and no defensive branch is needed. You're right about the coverage too. Only the delay > deadlock_timeout regime is exercised today, and -1 is the one where the second wait has no startup-side timer to fall back on. This patch will be rebased on top of the deadlock-detector fix that lands first, and I'll add a -1 regime test as part of that rebase. -- JH Shin
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix race in ReplicationSlotRelease() for ephemeral slots
- f2081a7800f1 19 (unreleased) cited
-
Avoid leaking system path from pg_available_extensions
- db5ed03217b9 19 (unreleased) cited