Parsed test spec with 2 sessions starting permutation: s1a s1b s1c s2a s2b s2c s2d step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s1b s2a s1c s2b s2c s2d step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2a: BEGIN; step s1c: COMMIT; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s1b s2a s2b s1c s2c s2d step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s1b s2a s2b s2c s1c s2d step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s1a s2a s1b s1c s2b s2c s2d step s1a: BEGIN; step s2a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s2a s1b s2b s1c s2c s2d step s1a: BEGIN; step s2a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s2a s1b s2b s2c s1c s2d step s1a: BEGIN; step s2a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s1a s2a s2b s1b s1c s2c s2d step s1a: BEGIN; step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s1a s2a s2b s1b s2c s1c s2d step s1a: BEGIN; step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s1a s2a s2b s2c s1b s2d s1c step s1a: BEGIN; step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2d: COMMIT; step s1b: <... completed> step s1c: COMMIT; starting permutation: s1a s2a s2b s2c s2d s1b s1c step s1a: BEGIN; step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; starting permutation: s2a s1a s1b s1c s2b s2c s2d step s2a: BEGIN; step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s2a s1a s1b s2b s1c s2c s2d step s2a: BEGIN; step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s2a s1a s1b s2b s2c s1c s2d step s2a: BEGIN; step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s2a s1a s2b s1b s1c s2c s2d step s2a: BEGIN; step s1a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s2a s1a s2b s1b s2c s1c s2d step s2a: BEGIN; step s1a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s2a s1a s2b s2c s1b s2d s1c step s2a: BEGIN; step s1a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2d: COMMIT; step s1b: <... completed> step s1c: COMMIT; starting permutation: s2a s1a s2b s2c s2d s1b s1c step s2a: BEGIN; step s1a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; starting permutation: s2a s2b s1a s1b s1c s2c s2d step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; starting permutation: s2a s2b s1a s1b s2c s1c s2d step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1c: COMMIT; step s2c: <... completed> step s2d: COMMIT; starting permutation: s2a s2b s1a s2c s1b s2d s1c step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1a: BEGIN; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2d: COMMIT; step s1b: <... completed> step s1c: COMMIT; starting permutation: s2a s2b s1a s2c s2d s1b s1c step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s1a: BEGIN; step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; starting permutation: s2a s2b s2c s1a s1b s2d s1c step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s2d: COMMIT; step s1b: <... completed> step s1c: COMMIT; starting permutation: s2a s2b s2c s1a s2d s1b s1c step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s1a: BEGIN; step s2d: COMMIT; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT; starting permutation: s2a s2b s2c s2d s1a s1b s1c step s2a: BEGIN; step s2b: SELECT * FROM a WHERE i = 1 FOR UPDATE; i - 1 (1 row) step s2c: UPDATE a SET i = 4 WHERE i = 3; step s2d: COMMIT; step s1a: BEGIN; step s1b: CREATE TRIGGER t AFTER UPDATE ON a EXECUTE PROCEDURE f(); step s1c: COMMIT;