XLogRecPtr prepare_end_lsn
void TwoPhaseTransactionGid(Oid subid, TransactionId xid, char *gid_res, int szgid)
void RecoverPreparedTransactions(void)
struct GlobalTransactionData * GlobalTransaction
void restoreTwoPhaseData(void)
bool LookupGXact(const char *gid, XLogRecPtr prepare_end_lsn, TimestampTz origin_prepare_timestamp)
Size TwoPhaseShmemSize(void)
void AtAbort_Twophase(void)
void FinishPreparedTransaction(const char *gid, bool isCommit)
TransactionId TwoPhaseGetXidByVirtualXID(VirtualTransactionId vxid, bool *have_more)
void PrepareRedoRemove(TransactionId xid, bool giveWarning)
void EndPrepare(GlobalTransaction gxact)
TransactionId PrescanPreparedTransactions(TransactionId **xids_p, int *nxids_p)
void StartPrepare(GlobalTransaction gxact)
void TwoPhaseShmemInit(void)
void PrepareRedoAdd(char *buf, XLogRecPtr start_lsn, XLogRecPtr end_lsn, RepOriginId origin_id)
void StandbyRecoverPreparedTransactions(void)
PGPROC * TwoPhaseGetDummyProc(TransactionId xid, bool lock_held)
void PostPrepare_Twophase(void)
bool LookupGXactBySubid(Oid subid)
int TwoPhaseGetDummyProcNumber(TransactionId xid, bool lock_held)
void CheckPointTwoPhase(XLogRecPtr redo_horizon)
bool StandbyTransactionIdIsPrepared(TransactionId xid)
GlobalTransaction MarkAsPreparing(TransactionId xid, const char *gid, TimestampTz prepared_at, Oid owner, Oid databaseid)
PGDLLIMPORT int max_prepared_xacts