Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
When a delegate in a parallel step fails the number of replies received is incremented twice, so the reply from the last delegate is not merged into the CAS. When it is received it will reenter the flow if the CAS is still active, causing even more trouble.
I have a test case that demonstrates the problem.
Also we should make the check for all-replies-received atomic so that only one reply- or error-processing thread will send the CAS on to the next step, or, depending on the error-handling, discard the CAS or terminate the service.