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