Commit 2268e6af authored by Alvaro Herrera's avatar Alvaro Herrera

Fix isolation test to be less timing-dependent

I did this by adding another locking process, which makes the other two
wait.  This way the output should be stable enough.

Per buildfarm and Andres Freund
Discussion: https://postgr.es/m/20180103034445.t3utrtrnrevfsghm@alap3.anarazel.de
parent 9d4649ca
Parsed test spec with 2 sessions
Parsed test spec with 3 sessions
starting permutation: s2l s1i s2i s3u
pg_advisory_lock
starting permutation: s2l s1i s2i
step s2l: SELECT pg_advisory_lock(281457);
pg_advisory_lock
......@@ -11,9 +14,11 @@ step s1i:
<waiting ...>
step s2i:
CREATE INDEX CONCURRENTLY mcic_two_pkey ON mcic_two (id)
WHERE unlck();
WHERE unlck() AND lck_shr(572814);
<waiting ...>
step s3u: SELECT unlck();
unlck
t
step s1i: <... completed>
s1
step s2i: <... completed>
......@@ -26,15 +26,19 @@ session "s1"
step "s1i" {
CREATE INDEX CONCURRENTLY mcic_one_pkey ON mcic_one (id)
WHERE lck_shr(281457);
}
teardown { SELECT pg_advisory_unlock_all() AS "s1"; }
}
step "s1u" { SELECT unlck(); }
session "s2"
step "s2l" { SELECT pg_advisory_lock(281457); }
step "s2i" {
CREATE INDEX CONCURRENTLY mcic_two_pkey ON mcic_two (id)
WHERE unlck();
WHERE unlck() AND lck_shr(572814);
}
permutation "s2l" "s1i" "s2i"
session "s3"
setup { SELECT pg_advisory_lock(572814); }
step "s3u" { SELECT unlck(); }
permutation "s2l" "s1i" "s2i" "s3u"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment