Re: getting deadlocks on full table lock - Mailing list pgsql-general

From Merlin Moncure
Subject Re: getting deadlocks on full table lock
Date
Msg-id b42b73150603271317l486137a2yf003921e96e86e7a@mail.gmail.com
Whole thread Raw
In response to Re: getting deadlocks on full table lock  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On 3/27/06, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Merlin Moncure" <mmoncure@gmail.com> writes:
> > I am getting a deadlock which I can't explain...although maybe
> > somebody else can...here's the situation:
>
> TRUNCATE requires exclusive lock, and won't release it until end of
> transaction.  Since you've already read something from the target
> table before attempting TRUNCATE, you already have AccessShareLock
> and are attempting to acquire AccessExclusiveLock.  Classic deadly
> embrace.

duh.  Anyways, I moved the update() above read part and this
eliminated most of the deadlocks...but I still got a few.  Throwing a
'lock table mat_table' before truncate killed them all though.

Merlin

pgsql-general by date:

Previous
From: "beer"
Date:
Subject: Issues with restoring
Next
From: "Mark Feller"
Date:
Subject: Re: [Bulk] General advice on database/web applications