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

Alvaro Herrera <alvherre@2ndquadrant.com>

From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Peter Geoghegan <pg@heroku.com>
Cc: Mark Kirkwood <mark.kirkwood@catalyst.net.nz>, Andrew Sackville-West <awest@janrain.com>, pgsql-bugs <pgsql-bugs@postgresql.org>, Paulo Tanimoto <paulo@janrain.com>
Date: 2014-12-12T21:16:56Z
Lists: pgsql-bugs
Peter Geoghegan wrote:
> On Fri, Dec 12, 2014 at 12:52 PM, Alvaro Herrera
> <alvherre@2ndquadrant.com> wrote:
> > Okay, I created a reproducer ... but it doesn't work.  I mean, the
> > commands are fine: if I execute them manually in four sessions in an
> > unpatched server I get a deadlock.  But isolationtester doesn't know to
> > handle more than one blocked session, so it just hangs when the third
> > session blocks after the second one is already blocked.  :-(
> 
> We need a stress-testing framework. I hacked together one for the ON
> CONFLICT UPDATE patch (https://github.com/petergeoghegan/upsert), but
> a more comprehensive effort is needed.

Hm, that's nice, but I hope you realize that a framework based on shell
scripts cannot possibly work for us.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


Commits

  1. Add isolationtester spec for old heapam.c bug

  2. Improve concurrency of foreign key locking