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

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


The following commit(s) were added to refs/heads/master by this push:
     new 5a8519ee6 RATIS-1920. NPE in AppendLogResponseHandler. (#952)
5a8519ee6 is described below

commit 5a8519ee6cc40abb999d07154c4c2d12320c2da1
Author: Tsz-Wo Nicholas Sze <[email protected]>
AuthorDate: Tue Oct 24 23:02:41 2023 -0700

    RATIS-1920. NPE in AppendLogResponseHandler. (#952)
---
 .../src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java    | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git 
a/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java 
b/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
index 5d83259ca..15f15463f 100644
--- a/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
+++ b/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
@@ -437,7 +437,8 @@ public class GrpcLogAppender extends LogAppenderBase {
           grpcServerMetrics.onRequestInconsistency(getFollowerId().toString());
           LOG.warn("{}: received {} reply with nextIndex {}, request={}",
               this, reply.getResult(), reply.getNextIndex(), request);
-          
updateNextIndex(getNextIndexForInconsistency(request.getFirstIndex(), 
reply.getNextIndex()));
+          final long requestFirstIndex = request != null? 
request.getFirstIndex(): RaftLog.INVALID_LOG_INDEX;
+          updateNextIndex(getNextIndexForInconsistency(requestFirstIndex, 
reply.getNextIndex()));
           break;
         default:
           throw new IllegalStateException("Unexpected reply result: " + 
reply.getResult());

Reply via email to