From: | Alvaro Herrera Munoz <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Jenny - <nat_lazy(at)hotmail(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: [HACKERS] tablelevel and rowlevel locks |
Date: | 2003-09-04 19:11:19 |
Message-ID: | 20030904191119.GI15428@dcc.uchile.cl |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-hackers |
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[(at)]dcc(dot)uchile(dot)cl>)
"I dream about dreams about dreams", sang the nightingale
under the pale moon (Sandman)
From | Date | Subject | |
---|---|---|---|
Next Message | Jan Wieck | 2003-09-04 19:24:21 | Re: how to call a TCL function from within a plpgsql trigger? |
Previous Message | Edwin Quijada | 2003-09-04 19:08:40 | Re: Activate Index |
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2003-09-04 19:13:08 | Re: TCP/IP with 7.4 beta2 broken? |
Previous Message | Marc G. Fournier | 2003-09-04 18:56:21 | Re: PG7.5 |