RATIS-404. Deadlock in ratis between appendEntries and RaftLogWorker.  
Contributed by Mukul Kumar Singh


Project: http://git-wip-us.apache.org/repos/asf/incubator-ratis/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ratis/commit/6f3419ad
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ratis/tree/6f3419ad
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ratis/diff/6f3419ad

Branch: refs/heads/master
Commit: 6f3419ad8bc54b4732309f8981482b8726ec428d
Parents: 2c40f8a
Author: Tsz Wo Nicholas Sze <[email protected]>
Authored: Fri Nov 9 13:13:32 2018 -0800
Committer: Tsz Wo Nicholas Sze <[email protected]>
Committed: Fri Nov 9 13:13:32 2018 -0800

----------------------------------------------------------------------
 .../src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ratis/blob/6f3419ad/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
----------------------------------------------------------------------
diff --git 
a/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java 
b/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
index 09e4550..48a21ee 100644
--- 
a/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
+++ 
b/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
@@ -920,7 +920,7 @@ public class RaftServerImpl implements RaftServerProtocol, 
RaftServerAsynchronou
     if (!isHeartbeat) {
       CodeInjectionForTesting.execute(RaftLog.LOG_SYNC, getId(), null);
     }
-    return JavaUtils.allOf(futures).thenApply(v -> {
+    return JavaUtils.allOf(futures).thenApplyAsync(v -> {
       final AppendEntriesReplyProto reply;
       synchronized(this) {
         if (lifeCycle.getCurrentState() == RUNNING && isFollower()

Reply via email to