Enhance slot synchronization API to respect promotion signal.
authorAmit Kapila <[email protected]>
Thu, 11 Dec 2025 03:49:28 +0000 (03:49 +0000)
committerAmit Kapila <[email protected]>
Thu, 11 Dec 2025 03:49:28 +0000 (03:49 +0000)
commit1362bc33e025fd2848ff38558f5672e2f0f0c7de
treeba14d28ff94d439f8f5fac574d1fd4bb7b6ed480
parente16c6f024718cf854f5b76a4a2ed402f1a7911f1
Enhance slot synchronization API to respect promotion signal.

Previously, during a promotion, only the slot synchronization worker was
signaled to shut down. The backend executing slot synchronization via the
pg_sync_replication_slots() SQL function was not signaled, allowing it to
complete its synchronization cycle before exiting.

An upcoming patch improves pg_sync_replication_slots() to wait until
replication slots are fully persisted before finishing. This behaviour
requires the backend to exit promptly if a promotion occurs.

This patch ensures that, during promotion, a signal is also sent to the
backend running pg_sync_replication_slots(), allowing it to be interrupted
and exit immediately.

Author: Ajin Cherian <[email protected]>
Reviewed-by: Shveta Malik <[email protected]>
Reviewed-by: Chao Li <[email protected]>
Reviewed-by: Amit Kapila <[email protected]>
Discussion: https://postgr.es/m/CAFPTHDZAA%2BgWDntpa5ucqKKba41%3DtXmoXqN3q4rpjO9cdxgQrw%40mail.gmail.com
src/backend/replication/logical/slotsync.c