On Mon, Sep 26, 2011 at 01:10:27PM -0400, Tom Lane wrote:
> Andrew Dunstan <and...@dunslane.net> writes:
> > We are seeing numerous occasional buildfarm failures of the fk-deadlock2 
> > isolation test,
> 
> Yeah, I complained about this already, but Kevin disclaims all
> responsibility for the fk isolation tests.  It looks like Alvaro
> and Noah Misch are the people to be harassing.

Yep; I took advantage of Kevin's test harness for some unrelated tests.

These sporadic failures happen whenever the test case takes longer than
deadlock_timeout (currently 100ms for these tests) to setup the deadlock.  I
outlined some mitigating strategies here:
http://archives.postgresql.org/message-id/20110727171438.ge18...@tornado.leadboat.com

I'd vote for #1: let's double the deadlock_timeout until the failures stop.
Other opinions?

Thanks,
nm
*** a/src/test/isolation/specs/fk-deadlock.spec
--- b/src/test/isolation/specs/fk-deadlock.spec
***************
*** 19,25 **** teardown
  }
  
  session "s1"
! setup         { BEGIN; SET deadlock_timeout = '100ms'; }
  step "s1i"    { INSERT INTO child VALUES (1, 1); }
  step "s1u"    { UPDATE parent SET aux = 'bar'; }
  step "s1c"    { COMMIT; }
--- 19,25 ----
  }
  
  session "s1"
! setup         { BEGIN; SET deadlock_timeout = '200ms'; }
  step "s1i"    { INSERT INTO child VALUES (1, 1); }
  step "s1u"    { UPDATE parent SET aux = 'bar'; }
  step "s1c"    { COMMIT; }
*** a/src/test/isolation/specs/fk-deadlock2.spec
--- b/src/test/isolation/specs/fk-deadlock2.spec
***************
*** 24,30 **** teardown
  }
  
  session "s1"
! setup         { BEGIN; SET deadlock_timeout = '100ms'; }
  step "s1u1"   { UPDATE A SET Col1 = 1 WHERE AID = 1; }
  step "s1u2"   { UPDATE B SET Col2 = 1 WHERE BID = 2; }
  step "s1c"    { COMMIT; }
--- 24,30 ----
  }
  
  session "s1"
! setup         { BEGIN; SET deadlock_timeout = '200ms'; }
  step "s1u1"   { UPDATE A SET Col1 = 1 WHERE AID = 1; }
  step "s1u2"   { UPDATE B SET Col2 = 1 WHERE BID = 2; }
  step "s1c"    { COMMIT; }
-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to