Solution
In Batch executions, a Wait step can only wait on a subsequence that has already started a multithreaded instance for the current execution. When synchronization for a subsequence is configured as One thread only, this condition is not guaranteed for every socket. To avoid this error, use Batch Synchronization steps instead of thread-based waits to coordinate execution.
Use the following approach:
- Remove the Wait step that attempts to wait on the One Thread Only subsequence from the main sequence.
- Move the synchronization logic into the subsequence that performs the shared operation.
- Use Batch Synchronization steps to control when sockets are allowed to continue execution.
- Ensure that any convergence timing or result data is finalized before the Exit Batch Synchronization step releases the remaining sockets.
Batch Synchronization steps are socket-aware and do not rely on per-execution thread objects. This makes them the recommended and most robust method for coordinating execution in Batch process models, especially when not all sockets participate in the same operations.