Parsed test spec with 2 sessions starting permutation: beginrr1 beginrr2 donothing1 c1 donothing2 c2 show step beginrr1: BEGIN ISOLATION LEVEL REPEATABLE READ; step beginrr2: BEGIN ISOLATION LEVEL REPEATABLE READ; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c1: COMMIT; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c2: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing1 (1 row) starting permutation: beginrr1 beginrr2 donothing2 c2 donothing1 c1 show step beginrr1: BEGIN ISOLATION LEVEL REPEATABLE READ; step beginrr2: BEGIN ISOLATION LEVEL REPEATABLE READ; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c2: COMMIT; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c1: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing2 (1 row) starting permutation: beginrr1 beginrr2 donothing1 donothing2 c1 c2 show step beginrr1: BEGIN ISOLATION LEVEL REPEATABLE READ; step beginrr2: BEGIN ISOLATION LEVEL REPEATABLE READ; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c1: COMMIT; step donothing2: <... completed> ERROR: could not serialize access due to concurrent update step c2: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing1 (1 row) starting permutation: beginrr1 beginrr2 donothing2 donothing1 c2 c1 show step beginrr1: BEGIN ISOLATION LEVEL REPEATABLE READ; step beginrr2: BEGIN ISOLATION LEVEL REPEATABLE READ; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c2: COMMIT; step donothing1: <... completed> ERROR: could not serialize access due to concurrent update step c1: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing2 (1 row) starting permutation: begins1 begins2 donothing1 c1 donothing2 c2 show step begins1: BEGIN ISOLATION LEVEL SERIALIZABLE; step begins2: BEGIN ISOLATION LEVEL SERIALIZABLE; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c1: COMMIT; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c2: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing1 (1 row) starting permutation: begins1 begins2 donothing2 c2 donothing1 c1 show step begins1: BEGIN ISOLATION LEVEL SERIALIZABLE; step begins2: BEGIN ISOLATION LEVEL SERIALIZABLE; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c2: COMMIT; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c1: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing2 (1 row) starting permutation: begins1 begins2 donothing1 donothing2 c1 c2 show step begins1: BEGIN ISOLATION LEVEL SERIALIZABLE; step begins2: BEGIN ISOLATION LEVEL SERIALIZABLE; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step c1: COMMIT; step donothing2: <... completed> ERROR: could not serialize access due to concurrent update step c2: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing1 (1 row) starting permutation: begins1 begins2 donothing2 donothing1 c2 c1 show step begins1: BEGIN ISOLATION LEVEL SERIALIZABLE; step begins2: BEGIN ISOLATION LEVEL SERIALIZABLE; step donothing2: INSERT INTO ints(key, val) VALUES(1, 'donothing2'), (1, 'donothing3') ON CONFLICT DO NOTHING; step donothing1: INSERT INTO ints(key, val) VALUES(1, 'donothing1') ON CONFLICT DO NOTHING; step c2: COMMIT; step donothing1: <... completed> ERROR: could not serialize access due to concurrent update step c1: COMMIT; step show: SELECT * FROM ints; key|val ---+---------- 1|donothing2 (1 row)