Re: Improve pg_sync_replication_slots() to wait for primary to advance
Ajin Cherian <itsajin@gmail.com>
From: Ajin Cherian <itsajin@gmail.com>
To: shveta malik <shveta.malik@gmail.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>,
Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>, Japin Li <japinli@hotmail.com>, Ashutosh Sharma <ashu.coek88@gmail.com>, PostgreSQL mailing lists <pgsql-hackers@postgresql.org>
Date: 2025-12-04T09:01:04Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Enhance slot synchronization API to respect promotion signal.
- 4bed04d39566 17.10 landed
- 94efd308bcec 18.4 landed
- 1362bc33e025 19 (unreleased) landed
-
Fix inconsistent elevel in pg_sync_replication_slots() retry logic.
- f1ddaa15357f 19 (unreleased) landed
-
Refactor slot synchronization logic in slotsync.c.
- 788ec96d591d 19 (unreleased) landed
-
Fix intermittent BF failure in 040_standby_failover_slots_sync.
- b47c50e5667b 19 (unreleased) landed
-
Add retry logic to pg_sync_replication_slots().
- 0d2d4a0ec3ec 19 (unreleased) landed
-
Fix LOCK_TIMEOUT handling in slotsync worker.
- 04396eacd3fa 19 (unreleased) cited
-
Add slotsync skip statistics.
- 76b78721ca49 19 (unreleased) cited
Attachments
- v30-0001-Use-SIGUSR1-to-interrupt-slot-synchronization-wo.patch (application/octet-stream) patch v30-0001
On Thu, Dec 4, 2025 at 5:04 PM shveta malik <shveta.malik@gmail.com> wrote:
>
>
> I have just 2 trivial comments for v29-001:
>
> 1)
> - * receives a SIGINT from the startup process, or when there is an error.
> + * receives a SIGUSR1 from the startup process, or when there is an error.
>
> In above we should mention stopSignaled rather than SIGUSR1, as
> SIGUSR1 is just a wakeup signal and not termination signal.
>
Fixed.
> 2)
> + else
> + ereport(ERROR,
> + errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
> + errmsg("cannot continue replication slot synchronization"
> + " as standby promotion is triggered"));
>
> Please mention that it is SQL-function in the comment for else-block.
>
Fixed.
> ~~
>
> I tested the touched scenarios and here are the LOGs:
>
Thanks for testing!
Attaching patch v30 with the above changes addressed. I've also run
pgindent on the changes.
regards,
Ajin Cherian
Fujitsu Australia