Maksim Timonin created IGNITE-17656: ---------------------------------------
Summary: Race in DistributedProcess#onSingleNodeMessageReceived Key: IGNITE-17656 URL: https://issues.apache.org/jira/browse/IGNITE-17656 Project: Ignite Issue Type: Bug Reporter: Maksim Timonin Assignee: Maksim Timonin DistributedProcess#onSingleNodeMessageReceived It could be a case when 2 (one of them is the last) messages receives simultaneously: # Initial state: remaining = \{node0, node1}, singleMsg={} # First msg handled, thread stops after releasing the `mux`: remaining=\{node0}, singleMsg={}. # Second msg handled, thread doesn't stop and: remaining={}, singleMsg=\{node1}. And finishes process after that. # Thread 1 invoked, put message to singleMsg, but process was already finished. Solution is changing both collections (remaining, singleMsg) under the same `mux`. -- This message was sent by Atlassian Jira (v8.20.10#820010)