> I revisited the CheckPointSnapBuild() and
> CheckPointLogicalRewriteHeap(). Both functions work idempotently and
> are safe to move after CheckPointReplicationSlots(). They benefit from
> the updated last_saved_restart_lsn computed in the current checkpoint
> cycle, enabling more accurate cleanup decisions.
>
> I ran regression testing comparing the baseline (master) version with
> the patched version:
>
> - Checkpoint duration: No change.
> - WAL retention: More accurate, because it uses the current
> replication slot state.
> - Regressions: None detected.
> - Dependencies: No new dependencies introduced.
>
> Please see the v2 as attached but we can also commit the v1 since the
> only difference is the order of CheckPointSnapBuild and
> CheckPointLogicalRewriteHeap working idempotently.
Rebased it against the head.
Regards,
Demir.