Re: regression, deadlock in high frequency single-row UPDATE

Andrew Sackville-West <awest@janrain.com>

From: Andrew Sackville-West <awest@janrain.com>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Mark Kirkwood <mark.kirkwood@catalyst.net.nz>, pgsql-bugs@postgresql.org, Paulo Tanimoto <paulo@janrain.com>
Date: 2014-12-11T21:28:55Z
Lists: pgsql-bugs
On Thu, Dec 11, 2014 at 02:22:56PM -0300, Alvaro Herrera wrote:
> Alvaro Herrera wrote:
>
> > I'm going to experiment with that idea and see if it leads to a
> > solution.  I tried the other idea yesterday (to keep the HW tuple lock
> > we acquire in heap_lock_tuple until heap_update is done) but aside from
> > being very complicated and bug-prone, it doesn't solve the problem
> > anyway.
>
> Here's a preliminary patch.  It does solve the deadlock in my simplified
> test case.  If Andrew can confirm that it fixes his original problem
> too, that'd be good.

We can try that. We don't currently build our own pg, so it'll take a
bit for us to get there. I'll report back with results.

A


Commits

  1. Add isolationtester spec for old heapam.c bug

  2. Improve concurrency of foreign key locking