diff options
Diffstat (limited to 'src/include/access/transam.h')
-rw-r--r-- | src/include/access/transam.h | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/src/include/access/transam.h b/src/include/access/transam.h deleted file mode 100644 index 60162e372a2..00000000000 --- a/src/include/access/transam.h +++ /dev/null @@ -1,121 +0,0 @@ -/*------------------------------------------------------------------------- - * - * transam.h - * postgres transaction access method support code - * - * - * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * $Id: transam.h,v 1.46 2002/06/20 20:29:43 momjian Exp $ - * - *------------------------------------------------------------------------- - */ -#ifndef TRANSAM_H -#define TRANSAM_H - - -/* ---------------- - * Special transaction ID values - * - * BootstrapTransactionId is the XID for "bootstrap" operations, and - * FrozenTransactionId is used for very old tuples. Both should - * always be considered valid. - * - * FirstNormalTransactionId is the first "normal" transaction id. - * ---------------- - */ -#define InvalidTransactionId ((TransactionId) 0) -#define BootstrapTransactionId ((TransactionId) 1) -#define FrozenTransactionId ((TransactionId) 2) -#define FirstNormalTransactionId ((TransactionId) 3) -#define MaxTransactionId ((TransactionId) 0xFFFFFFFF) - -/* ---------------- - * transaction ID manipulation macros - * ---------------- - */ -#define TransactionIdIsValid(xid) ((xid) != InvalidTransactionId) -#define TransactionIdIsNormal(xid) ((xid) >= FirstNormalTransactionId) -#define TransactionIdEquals(id1, id2) ((id1) == (id2)) -#define TransactionIdStore(xid, dest) (*(dest) = (xid)) -#define StoreInvalidTransactionId(dest) (*(dest) = InvalidTransactionId) -/* advance a transaction ID variable, handling wraparound correctly */ -#define TransactionIdAdvance(dest) \ - do { \ - (dest)++; \ - if ((dest) < FirstNormalTransactionId) \ - (dest) = FirstNormalTransactionId; \ - } while(0) - - -/* ---------- - * Object ID (OID) zero is InvalidOid. - * - * OIDs 1-9999 are reserved for manual assignment (see the files - * in src/include/catalog/). - * - * OIDS 10000-16383 are reserved for assignment by genbki.sh. - * - * OIDs beginning at 16384 are assigned at runtime from the OID - * generator. (The first few of these will be assigned during initdb, - * to objects created after the initial BKI script processing.) - * - * The choices of 10000 and 16384 are completely arbitrary, and can be moved - * if we run low on OIDs in either category. Changing the macros below - * should be sufficient to do this. - * - * NOTE: if the OID generator wraps around, we should skip over OIDs 0-16383 - * and resume with 16384. This minimizes the odds of OID conflict, by not - * reassigning OIDs that might have been assigned during initdb. - * ---------- - */ -#define FirstGenBKIObjectId 10000 -#define BootstrapObjectIdData 16384 - -/* - * VariableCache is placed in shmem and used by - * backends to get next available XID & OID. - */ -typedef struct VariableCacheData -{ - TransactionId nextXid; /* next XID to assign */ - Oid nextOid; /* next OID to assign */ - uint32 oidCount; /* OIDs available before must do XLOG work */ -} VariableCacheData; - -typedef VariableCacheData *VariableCache; - - -/* ---------------- - * extern declarations - * ---------------- - */ - -/* in transam/transam.c */ -extern bool AMI_OVERRIDE; - -/* in transam/varsup.c */ -extern VariableCache ShmemVariableCache; - - -/* - * prototypes for functions in transam/transam.c - */ -extern void AmiTransactionOverride(bool flag); -extern bool TransactionIdDidCommit(TransactionId transactionId); -extern bool TransactionIdDidAbort(TransactionId transactionId); -extern void TransactionIdCommit(TransactionId transactionId); -extern void TransactionIdAbort(TransactionId transactionId); -extern bool TransactionIdPrecedes(TransactionId id1, TransactionId id2); -extern bool TransactionIdPrecedesOrEquals(TransactionId id1, TransactionId id2); -extern bool TransactionIdFollows(TransactionId id1, TransactionId id2); -extern bool TransactionIdFollowsOrEquals(TransactionId id1, TransactionId id2); - -/* in transam/varsup.c */ -extern TransactionId GetNewTransactionId(void); -extern TransactionId ReadNewTransactionId(void); -extern Oid GetNewObjectId(void); -extern void CheckMaxObjectId(Oid assigned_oid); - -#endif /* TRAMSAM_H */ |