This is an automated email from the ASF dual-hosted git repository.

ilyak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new 8c7a76e  IGNITE-13062 Race in state processor fixed - Fixes #7837.
8c7a76e is described below

commit 8c7a76ef337afc59b7982041586e288d5f010a41
Author: ibessonov <[email protected]>
AuthorDate: Fri May 29 12:45:10 2020 +0300

    IGNITE-13062 Race in state processor fixed - Fixes #7837.
    
    Signed-off-by: Ilya Kasnacheev <[email protected]>
---
 .../ignite/internal/processors/cluster/GridClusterStateProcessor.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
index 1fbd305..7353135 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
@@ -564,11 +564,13 @@ public class GridClusterStateProcessor extends 
GridProcessorAdapter implements I
             if (joinFut != null)
                 joinFut.onDone(false);
 
-            GridFutureAdapter<Void> transitionFut = 
transitionFuts.remove(discoClusterState.transitionRequestId());
+            GridFutureAdapter<Void> transitionFut = 
transitionFuts.get(discoClusterState.transitionRequestId());
 
             if (transitionFut != null) {
                 discoClusterState.setTransitionResult(msg.requestId(), 
msg.state());
 
+                transitionFuts.remove(discoClusterState.transitionRequestId());
+
                 transitionFut.onDone();
             }
         }

Reply via email to