On Fri, 14 Dec 2001 pgsql-bugs(at)postgresql(dot)org wrote:
> Eugene Fokin (elf(at)solvo(dot)ru) reports a bug with a severity of 2
> The lower the number the more severe it is.
> Short Description
> Unexpected DeadLock on REFERENCES
> Long Description
> DeadLock happens when we're trying to concurrent update different
> tables which chained with one table through REFERENCE.
> See Example Code. Just perform the script and follow instructions
> on the header.
> This case have been checked on 7.1.3 version.
> Sample Code
> -- At first you should execute this script.
> -- In two different sessions for one DB perform:
> -- (1) begin transaction;
> -- (2) begin transaction;
> -- (1) update ref1 set d='R11110';
> -- (2) update ref2 set d='R22220';
> -- (1) update ref3 set d='R33330';
> -- (2) update ref4 set d='R44440';
> -- !!! Didn't you get DeadLock ?
I get a detected deadlock. This is a known problem due to the
foreign key locks being stronger than necessary. I think
a shared row lock that blocks update/delete but not itself rather
than the current select for update lock would allow this case
In response to
pgsql-bugs by date
|Next:||From: Tom Lane||Date: 2001-12-14 16:06:54|
|Subject: Re: Unable to compare _bpchar for similarity in WHERE-clause (MINOR A NNOYANCE) |
|Previous:||From: Lamar Owen||Date: 2001-12-14 14:04:45|
|Subject: Re: Red Hat 7.2 Bug|