Parsed test spec with 5 sessions starting permutation: take-locks s1-start-operation s2-start-operation s3-start-operation show-progress release-locks-1 show-progress release-locks-2 show-progress release-locks-3 step take-locks: -- Locks for steps of sample operation in s1 SELECT pg_advisory_lock(10); SELECT pg_advisory_lock(11); SELECT pg_advisory_lock(12); -- Locks for steps of sample operation in s2 SELECT pg_advisory_lock(20); SELECT pg_advisory_lock(21); SELECT pg_advisory_lock(22); -- Locks for steps of sample operation in s3 SELECT pg_advisory_lock(30); SELECT pg_advisory_lock(31); SELECT pg_advisory_lock(32); pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock pg_advisory_lock step s1-start-operation: SELECT sample_operation(1337, 10, -1); step s2-start-operation: SELECT sample_operation(1337, 20, 2); step s3-start-operation: SELECT sample_operation(3778, 30, 9); step show-progress: SELECT show_progress(1337); SELECT show_progress(3778); show_progress (0,0) (1,0) (0,0) (1,0) show_progress (0,0) (1,0) step release-locks-1: -- Release the locks of first steps of sample operations SELECT pg_advisory_unlock(10); SELECT pg_advisory_unlock(20); SELECT pg_advisory_unlock(30); pg_advisory_unlock t pg_advisory_unlock t pg_advisory_unlock t step show-progress: SELECT show_progress(1337); SELECT show_progress(3778); show_progress (0,-1) (1,0) (0,2) (1,0) show_progress (0,9) (1,0) step release-locks-2: -- Release the locks of second steps of sample operations SELECT pg_advisory_unlock(11); SELECT pg_advisory_unlock(21); SELECT pg_advisory_unlock(31); pg_advisory_unlock t pg_advisory_unlock t pg_advisory_unlock t step show-progress: SELECT show_progress(1337); SELECT show_progress(3778); show_progress (0,-1) (1,-1) (0,2) (1,2) show_progress (0,9) (1,9) step release-locks-3: -- Release the locks of final steps of sample operations SELECT pg_advisory_unlock(12); SELECT pg_advisory_unlock(22); SELECT pg_advisory_unlock(32); pg_advisory_unlock t pg_advisory_unlock t pg_advisory_unlock t step s1-start-operation: <... completed> sample_operation step s2-start-operation: <... completed> sample_operation step s3-start-operation: <... completed> sample_operation