32#define SnapshotSelf (&SnapshotSelfData)
33#define SnapshotAny (&SnapshotAnyData)
42#define InitDirtySnapshot(snapshotdata) \
43 ((snapshotdata).snapshot_type = SNAPSHOT_DIRTY)
50#define InitNonVacuumableSnapshot(snapshotdata, vistestp) \
51 ((snapshotdata).snapshot_type = SNAPSHOT_NON_VACUUMABLE, \
52 (snapshotdata).vistest = (vistestp))
55#define IsMVCCSnapshot(snapshot) \
56 ((snapshot)->snapshot_type == SNAPSHOT_MVCC || \
57 (snapshot)->snapshot_type == SNAPSHOT_HISTORIC_MVCC)
bool GlobalVisTestIsRemovableFullXid(GlobalVisState *state, FullTransactionId fxid)
void UnregisterSnapshotFromOwner(Snapshot snapshot, ResourceOwner owner)
struct HTAB * HistoricSnapshotGetTupleCids(void)
bool GlobalVisTestIsRemovableXid(GlobalVisState *state, TransactionId xid)
bool GlobalVisCheckRemovableFullXid(Relation rel, FullTransactionId fxid)
void AtSubAbort_Snapshot(int level)
void SerializeSnapshot(Snapshot snapshot, char *start_address)
void AtEOXact_Snapshot(bool isCommit, bool resetXmin)
bool XidInMVCCSnapshot(TransactionId xid, Snapshot snapshot)
Snapshot GetTransactionSnapshot(void)
Snapshot GetLatestSnapshot(void)
void TeardownHistoricSnapshot(bool is_error)
Snapshot GetCatalogSnapshot(Oid relid)
void UnregisterSnapshot(Snapshot snapshot)
void PushActiveSnapshot(Snapshot snapshot)
Snapshot RestoreSnapshot(char *start_address)
void AtSubCommit_Snapshot(int level)
PGDLLIMPORT SnapshotData SnapshotToastData
void UpdateActiveSnapshotCommandId(void)
PGDLLIMPORT TransactionId TransactionXmin
bool HistoricSnapshotActive(void)
void ImportSnapshot(const char *idstr)
bool ActiveSnapshotSet(void)
PGDLLIMPORT SnapshotData SnapshotAnyData
Snapshot RegisterSnapshot(Snapshot snapshot)
bool XactHasExportedSnapshots(void)
void DeleteAllExportedSnapshotFiles(void)
bool GlobalVisCheckRemovableXid(Relation rel, TransactionId xid)
bool HaveRegisteredOrActiveSnapshot(void)
void InvalidateCatalogSnapshotConditionally(void)
bool ThereAreNoPriorRegisteredSnapshots(void)
void RestoreTransactionSnapshot(Snapshot snapshot, void *source_pgproc)
GlobalVisState * GlobalVisTestFor(Relation rel)
void SnapshotSetCommandId(CommandId curcid)
void PopActiveSnapshot(void)
void PushCopiedSnapshot(Snapshot snapshot)
char * ExportSnapshot(Snapshot snapshot)
PGDLLIMPORT SnapshotData SnapshotSelfData
Size EstimateSnapshotSpace(Snapshot snapshot)
void WaitForOlderSnapshots(TransactionId limitXmin, bool progress)
void SetupHistoricSnapshot(Snapshot historic_snapshot, struct HTAB *tuplecids)
PGDLLIMPORT bool FirstSnapshotSet
Snapshot RegisterSnapshotOnOwner(Snapshot snapshot, ResourceOwner owner)
void InvalidateCatalogSnapshot(void)
void PushActiveSnapshotWithLevel(Snapshot snapshot, int snap_level)
Snapshot GetNonHistoricCatalogSnapshot(Oid relid)
PGDLLIMPORT TransactionId RecentXmin
Snapshot GetActiveSnapshot(void)