Обсуждение: tablelevel and rowlevel locks
I am working on a project that involves displaying locking information about each lock taken, whether it be a row level or table leve llock. When dealing with struct LOCK (src/include/storage) i have noticed that postgreSQL creates a single LOCK struct for each table in the db. Like if i acquire 2 seperate row level locks on 2 seperate rows, both these locks are represented in the same struct LOCK datastructure . And if i acquire a table level lock on this table, then all 3 locks information( 2 row level locks and 1 table level lock) is recorded in the same LOCK datastructure. I would think that there should be 3 different LOCK datastructres created in postgreSQL for the above example. IS there are reason why only one LOCK datastructures is created in such a case? for the purposes of my project i need to seperate out these 3 locks and present them as 3 distinct locked objects. i was using the LockData(defined in src/include/storage/lock.h ) datastructures for this, but if all 3 locks are put into the same LOCK struct even in LOCKDATA then can someone help me as to how else i can accomplish what i intent on doing? thank you very much Jenny _________________________________________________________________ Compare Cable, DSL or Satellite plans: As low as $29.95. https://broadband.msn.com
On Thu, Sep 04, 2003 at 08:56:31AM -0700, Jenny - wrote: > I am working on a project that involves displaying locking information > about each lock taken, whether it be a row level or table leve llock. > When dealing with struct LOCK (src/include/storage) i have noticed that > postgreSQL creates a single LOCK struct for each table in the db. Like if > i acquire 2 seperate row level locks on 2 seperate rows, both these locks > are represented in the same struct LOCK datastructure. I think the locks would actually by represented by PROCLOCK structures. The LOCK structures are for lockable objects, not for actual locks. -- Alvaro Herrera (<alvherre[@]dcc.uchile.cl>) "Vivir y dejar de vivir son soluciones imaginarias. La existencia est� en otra parte" (Andre Breton)