Re: autovacuum process blocks without reporting a deadlock

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Thomas Chille" <thomas(at)chille(dot)de>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: autovacuum process blocks without reporting a deadlock
Date: 2007-11-27 15:52:10
Message-ID: 21348.1196178730@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

"Thomas Chille" <thomas(at)chille(dot)de> writes:
> I think this are the relevant pg_locks entries:

> relation 75685778 75686189
> 9017862 25467 AccessShareLock f
> relation 75685778 75686189
> 9009323 9317 ShareUpdateExclusiveLock
> t
> relation 75685778 75686189
> 9009312 9293 AccessShareLock t
> relation 75685778 75686189
> 9009312 9293 RowExclusiveLock t
> relation 75685778 75686189
> 9009312 9293 AccessExclusiveLock f
> relation 75685778 75686189
> 9012978 28370 AccessShareLock f

I don't think the vacuum is the problem here. The problem is process
9293, which for some reason is trying to get AccessExclusiveLock, and is
blocked behind autovac, and everything else is stacking up behind it.

You didn't happen to note what 9293 was doing did you? It's living
fairly dangerously in any case by trying to acquire exclusive lock
when it already holds a bunch of other lower-level locks; that's a
recipe for deadlock if I ever saw one.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Brendan Jurd 2007-11-27 15:52:17 Re: [GENERAL] Empty arrays with ARRAY[]
Previous Message Thomas Chille 2007-11-27 15:16:25 Re: autovacuum process blocks without reporting a deadlock