Re: Standby server with cascade logical replication could not be properly stopped under load
Alexey Makhmutov <a.makhmutov@postgrespro.ru>
From: Alexey Makhmutov <a.makhmutov@postgrespro.ru>
To: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: shveta malik <shveta.malik@gmail.com>, Ajin Cherian <itsajin@gmail.com>,
pgsql-bugs@lists.postgresql.org
Date: 2025-05-22T18:22:02Z
Lists: pgsql-bugs
Attachments
- 0001-Use-only-replayed-position-as-target-flush-point-3-pg-master.patch (text/x-patch) patch 0001
- 0002-Use-only-replayed-position-as-target-flush-point-3-pg-16.patch (text/x-patch) patch 0002
Hi Bertrand, thank you for looking at this issue. On 5/22/25 18:31, Bertrand Drouvot wrote: > I agree with your analysis and I think that your proposed fix make sense. I > wonder if the comment on top of GetStandbyFlushRecPtr() could be updated a bit > though. I've tried to update method comment as well in the updated patch: 0001-Use-only-replayed-position-as-target-flush-point-3-pg-master.patch. The same patch could be applied on top of PG 17 as well. PG 16 does not have the slot synchronization logic, so its implementation of GetStandbyFlushRecPtr is slightly different and comments need to be updated to reflect this discrepancy as well. So, here is a variant of the same patch updated to be compatible with PG 16: 0002-Use-only-replayed-position-as-target-flush-point-3-pg-16.patch Thanks, Alexey
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Use replay LSN as target for cascading logical WAL senders
- 5e6d561bc14d 16.10 landed
- 87be749c716a 17.6 landed
- 5231ed8262c9 18.0 landed