diff --git a/src/test/modules/injection_points/expected/basic.out b/src/test/modules/injection_points/expected/basic.out index 9499ef4bd9d..840ce2dac90 100644 --- a/src/test/modules/injection_points/expected/basic.out +++ b/src/test/modules/injection_points/expected/basic.out @@ -1,5 +1,31 @@ Parsed test spec with 2 sessions +starting permutation: wait1 wakeup2 detach2 +injection_points_attach +----------------------- + +(1 row) + +step wait1: SELECT injection_points_run('injection-points-wait'); +step wakeup2: SELECT injection_points_wakeup('injection-points-wait'); +injection_points_wakeup +----------------------- + +(1 row) + +step wait1: <... completed> +injection_points_run +-------------------- + +(1 row) + +step detach2: SELECT injection_points_detach('injection-points-wait'); +injection_points_detach +----------------------- + +(1 row) + + starting permutation: wait1 detach2 wakeup2 injection_points_attach ----------------------- diff --git a/src/test/modules/injection_points/specs/basic.spec b/src/test/modules/injection_points/specs/basic.spec index 47db676c0c1..753128e7f36 100644 --- a/src/test/modules/injection_points/specs/basic.spec +++ b/src/test/modules/injection_points/specs/basic.spec @@ -25,12 +25,11 @@ session s2 step wakeup2 { SELECT injection_points_wakeup('injection-points-wait'); } step detach2 { SELECT injection_points_detach('injection-points-wait'); } -# Detach after wait and wakeup. -# Permutations like the following one commented out should be avoided, as -# the detach may finish before the SQL function doing the wait returns -# its result. It is recommended to use wakeups as the last permutation -# should a wait be done within an SQL function. -#permutation wait1 wakeup2 detach2 +# Detach after wait and wakeup. Note that the detach may finish before +# the SQL function doing the wait returns its result. In order to avoid +# any ordering issues, the detach step reports its result only once the +# wait has completed. This is enforced with a parenthesized marker. +permutation wait1 wakeup2 detach2(wait1) # Detach before wakeup. s1 waits until wakeup, ignores the detach. permutation wait1 detach2 wakeup2