diff options
author | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-08-01 15:26:38 +0000 |
---|---|---|
committer | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-08-01 15:26:38 +0000 |
commit | 0d78e8c1124cb7f44f17dec2d313c2ac4b871195 (patch) | |
tree | 2dc1bfd7b22c47eab4c869f6ae2995349250a28e /src/include/storage/lmgr.h | |
parent | 83d3626b1f43cb507755d27e914e6788c17cd8ac (diff) |
Lmgr cleanup, new locking modes for LLL.
Diffstat (limited to 'src/include/storage/lmgr.h')
-rw-r--r-- | src/include/storage/lmgr.h | 44 |
1 files changed, 11 insertions, 33 deletions
diff --git a/src/include/storage/lmgr.h b/src/include/storage/lmgr.h index 818a2f09e59..0ee53344725 100644 --- a/src/include/storage/lmgr.h +++ b/src/include/storage/lmgr.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: lmgr.h,v 1.13 1998/07/13 16:34:56 momjian Exp $ + * $Id: lmgr.h,v 1.14 1998/08/01 15:26:36 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -27,45 +27,23 @@ typedef struct LockRelId Oid dbId; /* a database identifier */ } LockRelId; +#ifdef LowLevelLocking typedef struct LockInfoData { - bool initialized; LockRelId lockRelId; - TransactionId transactionIdData; - uint16 flags; + bool lockHeld[MAX_LOCKMODES]; /* on table level */ } LockInfoData; -typedef LockInfoData *LockInfo; - -#define LockInfoIsValid(lockinfo) \ - ((PointerIsValid(lockinfo)) && ((LockInfo) lockinfo)->initialized) +#else +typedef struct LockInfoData +{ + LockRelId lockRelId; +} LockInfoData; +#endif -extern LockRelId VariableRelationLockRelId; - -/* - * RelationGetLockRelId -- - * Returns "lock" relation identifier for a relation. - */ -/* ---------------- - * final condition is a hack to prevent problems during - * VARIABLE relation initialization - * ---------------- - */ -#define RelationGetLockRelId(relation) \ -( \ - AssertMacro(RelationIsValid(relation)), \ - (!LockInfoIsValid((LockInfo)(relation)->lockInfo)) ? \ - RelationInitLockInfo(relation) \ - : \ - (void)NULL, \ - (strcmp(RelationGetRelationName(relation)->data, \ - VariableRelationName) == 0) ? \ - VariableRelationLockRelId \ - : \ - ((LockInfo)(relation)->lockInfo)->lockRelId \ -) +typedef LockInfoData *LockInfo; +#define LockInfoIsValid(lockinfo) PointerIsValid(lockinfo) -extern Oid LockRelIdGetRelationId(LockRelId lockRelId); extern void RelationInitLockInfo(Relation relation); extern void RelationSetLockForDescriptorOpen(Relation relation); extern void RelationSetLockForRead(Relation relation); |