You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
A receive right after all([...]) returns null with a message pending #1021
In embedded workflow code, inbox()->receive() / receiveOne() called right after all([...]) returns no message while one is pending on the stream. General's interim review of #1017 found this. The same happens on main before #1017, so it predates that PR.
To investigate
The likely cause is the step the receive sees after all(). A parallel group takes several step positions, and visibleSequence after all() may not be the position the receive is replayed or recorded at. It may also be that the replay guard or recorded-consumption lookup keys on a sequence that the group's children share. Reproduce with a workflow that awaits a signal, runs all([activity(...), activity(...)]), then calls $this->inbox('chat')->receiveOne() with one message pending. Check whether it returns null on the first execution, only on replay, or both.
Expected
A receive after all([...]) behaves like a receive after a single step: on the first execution it consumes the pending message, and on replay it returns that message.
Activity