automatically detecting long timed locks - Mailing list pgsql-admin

From Tino Schwarze
Subject automatically detecting long timed locks
Date
Msg-id 20070912204657.GC29139@easy2.in-chemnitz.de
Whole thread Raw
Responses Re: automatically detecting long timed locks
List pgsql-admin
Hi there,

is there an easy way to detect locks which are held for a very long
time? We've got some problems with a database here where a lock is held
for 1 or 2 hours though the operation should be very quick. A lot of
other processes are then waiting for the lock to become available.

We would like to query for "lock on table xyz being held for more than
60 seconds" or the other way around "query has been waiting for lock on
table xyz for more than 60 seconds".

Of course, we get log entries like "LOG:  duration: 8544285.789 ms
execute <unnamed>: lock table "xyz" in exclusive mode", but this is
AFTER the lock got acquired. We'd like to notice if lock acquisition
takes very long so we can look around and figure out what's wrong.

How can we achieve this?

Thanks,

Tino.

PS: Version is 8.2.4.

--
www.spiritualdesign-chemnitz.de
www.lebensraum11.de

Tino Schwarze * Parkstraße 17h * 09120 Chemnitz

pgsql-admin by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: reindexdb hangs
Next
From: "Scott Marlowe"
Date:
Subject: Re: automatically detecting long timed locks