From d71197cd35db0b0e66120f37443be6a5dfc2669d Mon Sep 17 00:00:00 2001 From: Alvaro Herrera Date: Fri, 15 Jul 2011 18:43:33 -0400 Subject: [PATCH] Set different deadlock_timeout on each session in new isolation tests This provides deterministic deadlock-detection ordering for new isolation tests, fixing the sporadic failures in them. Author: Noah Misch --- src/test/isolation/expected/fk-deadlock.out | 4 ++-- src/test/isolation/expected/fk-deadlock2.out | 8 ++++---- src/test/isolation/specs/fk-deadlock.spec | 4 ++-- src/test/isolation/specs/fk-deadlock2.spec | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/test/isolation/expected/fk-deadlock.out b/src/test/isolation/expected/fk-deadlock.out index 6b6ee163c7..0d86cda1ca 100644 --- a/src/test/isolation/expected/fk-deadlock.out +++ b/src/test/isolation/expected/fk-deadlock.out @@ -32,8 +32,8 @@ step s1i: INSERT INTO child VALUES (1, 1); step s2i: INSERT INTO child VALUES (2, 1); step s2u: UPDATE parent SET aux = 'baz'; step s1u: UPDATE parent SET aux = 'bar'; -step s2u: <... completed> ERROR: deadlock detected +step s2u: <... completed> step s2c: COMMIT; step s1c: COMMIT; @@ -52,8 +52,8 @@ step s2i: INSERT INTO child VALUES (2, 1); step s1i: INSERT INTO child VALUES (1, 1); step s2u: UPDATE parent SET aux = 'baz'; step s1u: UPDATE parent SET aux = 'bar'; -step s2u: <... completed> ERROR: deadlock detected +step s2u: <... completed> step s2c: COMMIT; step s1c: COMMIT; diff --git a/src/test/isolation/expected/fk-deadlock2.out b/src/test/isolation/expected/fk-deadlock2.out index af3ce8ecfd..6e7f12d165 100644 --- a/src/test/isolation/expected/fk-deadlock2.out +++ b/src/test/isolation/expected/fk-deadlock2.out @@ -42,8 +42,8 @@ step s1u1: UPDATE A SET Col1 = 1 WHERE AID = 1; step s2u1: UPDATE B SET Col2 = 1 WHERE BID = 2; step s2u2: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u2: UPDATE B SET Col2 = 1 WHERE BID = 2; -step s2u2: <... completed> ERROR: deadlock detected +step s2u2: <... completed> step s1c: COMMIT; step s2c: COMMIT; @@ -52,8 +52,8 @@ step s1u1: UPDATE A SET Col1 = 1 WHERE AID = 1; step s2u1: UPDATE B SET Col2 = 1 WHERE BID = 2; step s2u2: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u2: UPDATE B SET Col2 = 1 WHERE BID = 2; -step s2u2: <... completed> ERROR: deadlock detected +step s2u2: <... completed> step s2c: COMMIT; step s1c: COMMIT; @@ -82,8 +82,8 @@ step s2u1: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u1: UPDATE A SET Col1 = 1 WHERE AID = 1; step s2u2: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u2: UPDATE B SET Col2 = 1 WHERE BID = 2; -step s2u2: <... completed> ERROR: deadlock detected +step s2u2: <... completed> step s1c: COMMIT; step s2c: COMMIT; @@ -92,8 +92,8 @@ step s2u1: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u1: UPDATE A SET Col1 = 1 WHERE AID = 1; step s2u2: UPDATE B SET Col2 = 1 WHERE BID = 2; step s1u2: UPDATE B SET Col2 = 1 WHERE BID = 2; -step s2u2: <... completed> ERROR: deadlock detected +step s2u2: <... completed> step s2c: COMMIT; step s1c: COMMIT; diff --git a/src/test/isolation/specs/fk-deadlock.spec b/src/test/isolation/specs/fk-deadlock.spec index 530cf10839..b533d77e0b 100644 --- a/src/test/isolation/specs/fk-deadlock.spec +++ b/src/test/isolation/specs/fk-deadlock.spec @@ -19,13 +19,13 @@ teardown } session "s1" -setup { BEGIN; } +setup { BEGIN; SET deadlock_timeout = '20ms'; } step "s1i" { INSERT INTO child VALUES (1, 1); } step "s1u" { UPDATE parent SET aux = 'bar'; } step "s1c" { COMMIT; } session "s2" -setup { BEGIN; } +setup { BEGIN; SET deadlock_timeout = '10s'; } step "s2i" { INSERT INTO child VALUES (2, 1); } step "s2u" { UPDATE parent SET aux = 'baz'; } step "s2c" { COMMIT; } diff --git a/src/test/isolation/specs/fk-deadlock2.spec b/src/test/isolation/specs/fk-deadlock2.spec index 91a87d13ef..5653628cf7 100644 --- a/src/test/isolation/specs/fk-deadlock2.spec +++ b/src/test/isolation/specs/fk-deadlock2.spec @@ -24,13 +24,13 @@ teardown } session "s1" -setup { BEGIN; } +setup { BEGIN; SET deadlock_timeout = '20ms'; } step "s1u1" { UPDATE A SET Col1 = 1 WHERE AID = 1; } step "s1u2" { UPDATE B SET Col2 = 1 WHERE BID = 2; } step "s1c" { COMMIT; } session "s2" -setup { BEGIN; } +setup { BEGIN; SET deadlock_timeout = '10s'; } step "s2u1" { UPDATE B SET Col2 = 1 WHERE BID = 2; } step "s2u2" { UPDATE B SET Col2 = 1 WHERE BID = 2; } step "s2c" { COMMIT; } -- GitLab