Fix xslt_process() to ensure that it inserts a NULL terminator after the
[PostgreSQL.git] / src / include / utils / snapmgr.h
blob6ccb44fd5b4d7ee80d2b47228e0797402819f53d
1 /*-------------------------------------------------------------------------
3 * snapmgr.h
4 * POSTGRES snapshot manager
6 * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
9 * $PostgreSQL$
11 *-------------------------------------------------------------------------
13 #ifndef SNAPMGR_H
14 #define SNAPMGR_H
16 #include "utils/resowner.h"
17 #include "utils/snapshot.h"
20 extern bool FirstSnapshotSet;
22 extern TransactionId TransactionXmin;
23 extern TransactionId RecentXmin;
24 extern TransactionId RecentGlobalXmin;
26 extern Snapshot GetTransactionSnapshot(void);
27 extern Snapshot GetLatestSnapshot(void);
28 extern void SnapshotSetCommandId(CommandId curcid);
30 extern void PushActiveSnapshot(Snapshot snapshot);
31 extern void PushUpdatedSnapshot(Snapshot snapshot);
32 extern void PopActiveSnapshot(void);
33 extern Snapshot GetActiveSnapshot(void);
34 extern bool ActiveSnapshotSet(void);
36 extern Snapshot RegisterSnapshot(Snapshot snapshot);
37 extern void UnregisterSnapshot(Snapshot snapshot);
38 extern Snapshot RegisterSnapshotOnOwner(Snapshot snapshot, ResourceOwner owner);
39 extern void UnregisterSnapshotFromOwner(Snapshot snapshot, ResourceOwner owner);
41 extern void AtSubCommit_Snapshot(int level);
42 extern void AtSubAbort_Snapshot(int level);
43 extern void AtEarlyCommit_Snapshot(void);
44 extern void AtEOXact_Snapshot(bool isCommit);
46 #endif /* SNAPMGR_H */