Parsed test spec with 2 sessions starting permutation: s1l s1svp s1d s1r s1c s2l s2c step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s1c: COMMIT; step s2l: SELECT * FROM foo FOR UPDATE; key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; starting permutation: s1l s1svp s1d s1r s2l s1c s2c step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s2l: SELECT * FROM foo FOR UPDATE; step s1c: COMMIT; step s2l: <... completed> key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; starting permutation: s1l s1svp s1d s2l s1r s1c s2c step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s2l: SELECT * FROM foo FOR UPDATE; step s1r: ROLLBACK TO f; step s1c: COMMIT; step s2l: <... completed> key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; starting permutation: s1l s1svp s2l s1d s1r s1c s2c step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s2l: SELECT * FROM foo FOR UPDATE; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s1c: COMMIT; step s2l: <... completed> key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; starting permutation: s1l s2l s1svp s1d s1r s1c s2c step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s2l: SELECT * FROM foo FOR UPDATE; step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s1c: COMMIT; step s2l: <... completed> key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; starting permutation: s2l s1l s2c s1svp s1d s1r s1c step s2l: SELECT * FROM foo FOR UPDATE; key|value ---+----- 1| 1 (1 row) step s1l: SELECT * FROM foo FOR KEY SHARE; step s2c: COMMIT; step s1l: <... completed> key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s1c: COMMIT; starting permutation: s2l s2c s1l s1svp s1d s1r s1c step s2l: SELECT * FROM foo FOR UPDATE; key|value ---+----- 1| 1 (1 row) step s2c: COMMIT; step s1l: SELECT * FROM foo FOR KEY SHARE; key|value ---+----- 1| 1 (1 row) step s1svp: SAVEPOINT f; step s1d: DELETE FROM foo; step s1r: ROLLBACK TO f; step s1c: COMMIT;