Re: ExclusiveLock without a relation in pg_locks - Mailing list pgsql-general

From Michael Fuhr
Subject Re: ExclusiveLock without a relation in pg_locks
Date
Msg-id 20060223222121.GA54502@winnie.fuhr.org
Whole thread Raw
In response to Re: ExclusiveLock without a relation in pg_locks  ("Carlos Oliva" <carlos@pbsinet.com>)
List pgsql-general
On Thu, Feb 23, 2006 at 02:10:22PM -0500, Carlos Oliva wrote:
> The ExclusiveLock seems to be granted on the transaction id instead of
> tables.  So I am guessing that, for a connection, the first lock is granted
> to the transaction id and later other locks are granted on specific tables.

Right.  Your output shows that the relation locks are AccessShareLock,
which is what the documentation says an ordinary SELECT acquires.
Other operations acquire stronger locks, depending on what they
need to prevent other transactions from doing until this transaction
completes.  Most of the time you don't need to worry about any of
this unless a transaction appears to be blocked (stuck); then you
can query pg_locks and look for locks where the granted column is
false and diagnose from there.

--
Michael Fuhr

pgsql-general by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: now() time off
Next
From: Tom Lane
Date:
Subject: Re: pg_autovacuum on Windows triggers string warning