Re: Incorrect snapshots while promoting hot standby node when 2PC is used - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Incorrect snapshots while promoting hot standby node when 2PC is used
Date
Msg-id YVaYc2Titlv8wnJD@paquier.xyz
Whole thread Raw
In response to Re: Incorrect snapshots while promoting hot standby node when 2PC is used  (Michael Paquier <michael@paquier.xyz>)
Responses Re: Incorrect snapshots while promoting hot standby node when 2PC is used  (Michael Paquier <michael@paquier.xyz>)
List pgsql-hackers
On Mon, May 31, 2021 at 09:37:17PM +0900, Michael Paquier wrote:
> I have been looking at all that for the last couple of days, and
> checked the code to make sure that relying on RecoveryInProgress() as
> the tipping point is logically correct in terms of virtual XID,
> snapshot build and KnownAssignedXids cleanup.  This stuff is tricky
> enough that I may have missed something, but my impression (and
> testing) is that we should be safe.

A couple of months later, I have looked back at this thread and this
report.  I have rechecked all the standby handling and snapshot builds
involving KnownAssignedXids and looked at all the phases that are
getting called until we call ShutdownRecoveryTransactionEnvironment()
to release these, and I don't think that there is a problem with the
solution proposed here.  So I propose to move on and apply this
patch.  Please let me know if there are any objections.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: pgsql: Document XLOG_INCLUDE_XID a little better
Next
From: "Drouvot, Bertrand"
Date:
Subject: Re: [BUG] failed assertion in EnsurePortalSnapshotExists()