| 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: | Whole Thread | Raw Message | 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
| 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? |