From 824c6865fa5bee511d50a8b90b41d0a4a3be2b3c Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Mon, 6 Jul 1998 18:16:07 +0000 Subject: [PATCH] Update lock manager README. --- src/backend/storage/lmgr/README | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/src/backend/storage/lmgr/README b/src/backend/storage/lmgr/README index 821f4a3745..8eca1686e0 100644 --- a/src/backend/storage/lmgr/README +++ b/src/backend/storage/lmgr/README @@ -1,17 +1,12 @@ -$Header: /cvsroot/pgsql/src/backend/storage/lmgr/README,v 1.2 1998/01/28 02:29:26 momjian Exp $ +$Header: /cvsroot/pgsql/src/backend/storage/lmgr/README,v 1.3 1998/07/06 18:16:07 momjian Exp $ -This file is an attempt to save me (and future code maintainers) some -time and a lot of headaches. The existing lock manager code at the time -of this writing (June 16 1992) can best be described as confusing. The -complexity seems inherent in lock manager functionality, but variable -names chosen in the current implementation really confuse me everytime -I have to track down a bug. Also, what gets done where and by whom isn't -always clear.... +There are two fundemental lock structures. Lock methods describe the +locking behavior. We currently only support multi-level locking. Lock +modes describe the mode of the lock(read/write or shared/exclusive). +See src/tools/backend/index.html and src/include/storage/lock.h for more +details. -Starting with the data structures the lock manager relies upon... - -(NOTE - these will undoubtedly change over time and it is likely -that this file won't always be updated along with the structs.) +--------------------------------------------------------------------------- The lock manager's LOCK: @@ -90,10 +85,3 @@ activeHolders - --------------------------------------------------------------------------- -Locks are accessed in two ways. Each PROC structure has a lockQueue, -that is a circular linked list of LOCK pointers that this process holds -or is waiting on. - -Second, there is a hash table that can do a lookup by combined LOCK -address and transaction id(xid) which allows a process to see what -type of locks it holds on that table.