Re: More information on how to understand table pg_locks.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Olivier Ceulemans" <Olivier(dot)Ceulemans(at)irislink(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: More information on how to understand table pg_locks.
Date: 2007-03-13 15:57:22
Message-ID: 2880.1173801442@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

"Olivier Ceulemans" <Olivier(dot)Ceulemans(at)irislink(dot)com> writes:
> I wrote an application making 'advanced' use of transactions. The
> application is not tied to a specific kind of database. It runs fine on
> oracle, db2, sql server but I run into a deadlock on postgresql.
> ...
> For transaction A, I have a RowShareLock on table X. I have no idea on
> how/why this RowShareLock is acquired by my application. In transaction
> A, I never read/write 'directly' to the table X. However I create data
> in other tables that have foreign keys to table X.

What Postgres version is this? Before 8.1 we used exclusive row locks
to enforce that referenced rows didn't go away before a referencing
row could be committed, and this made it easy to hit unexpected
deadlocks.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2007-03-13 15:58:12 Re: How to disable displaying of a NOTICE context?
Previous Message Dmitry Koterov 2007-03-13 15:33:58 How to disable displaying of a NOTICE context?