Resetting recovery target parameters in pg_createsubscriber

From: D Laaren <dlaaren8(at)gmail(dot)com>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Resetting recovery target parameters in pg_createsubscriber
Date: 2025-07-16 05:57:18
Message-ID: CAGWv16K6L6Pzm99i1KiXLjFWx2bUS3DVsR6yV87-YR9QO7xb3A@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Hackers,

I noticed that pg_createsubscriber sets recovery target params for
correct recovery before converting a physical replica to a logical
one but does not reset them afterward. It can lead to recovery
failures in certain scenarios.
For example, if recovery begins from a checkpoint where no WAL records
need to be applied, the system might incorrectly determine that the
recovery target was never reached because these parameters remain
active.

I’ve attached a TAP test to reproduce the issue.
The proposed patch ensures all recovery parameters are reset after
conversion to prevent such edge cases.

I would appreciate any feedback.
--
Regards,
Alyona Vinter

Attachment Content-Type Size
v1-0001-TAP-test-recovery_fails_after_pg_createsubscriber.pl application/x-perl 1.6 KB
v1-0002-reset-recovery-target-params-pg-createsubscriber.patch text/x-patch 2.5 KB

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2025-07-16 06:01:38 Re: track generic and custom plans in pg_stat_statements
Previous Message shveta malik 2025-07-16 05:55:17 Re: POC: enable logical decoding when wal_level = 'replica' without a server restart