Re: [HACKERS] tablelevel and rowlevel locks - Mailing list pgsql-general

From Alvaro Herrera Munoz
Subject Re: [HACKERS] tablelevel and rowlevel locks
Date
Msg-id 20030904191119.GI15428@dcc.uchile.cl
Whole thread Raw
In response to Re: [HACKERS] tablelevel and rowlevel locks  ("Jenny -" <nat_lazy@hotmail.com>)
Responses Re: [HACKERS] tablelevel and rowlevel locks  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Thu, Sep 04, 2003 at 11:21:05AM -0700, Jenny - wrote:

> >I think the locks would actually by represented by PROCLOCK structures.
> >The LOCK structures are for lockable objects, not for actual locks.
>
> Well,from what i understand, PROCLOCK stores the TransactionID and the LOCK
> its holding lock on ,so how would PROCLOCK be holding the 'actual' lock as
> apposed to the lockable objects?

Huh... look at http://developer.postgresql.org/pdf/internalpics.pdf pages 61 and 63.
Maybe it's clearer than whatever I can say.  Note that "HOLDER" has been renamed
to "PROCLOCK".

Anyway, I think the LOCK structure represents something that can be locked.
The PROCLOCK struct represents that some process is holding a lock on said
object.  That may be the reason why you are seeing that a lock is held by more
than one process at the same time (while in fact some of them are probably
_waiting_ for the lock).

--
Alvaro Herrera (<alvherre[@]dcc.uchile.cl>)
"I dream about dreams about dreams", sang the nightingale
under the pale moon (Sandman)

pgsql-general by date:

Previous
From: Sean Chittenden
Date:
Subject: Re: searching archives should be a weeeee bit faster ...
Next
From: "Edwin Quijada"
Date:
Subject: Re: Activate Index