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 e5eb57d0e1..d1cdb2bb7d 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 @@ -165,7 +165,7 @@ synchronized int process(Event event) { @SuppressWarnings({"squid:S3077"}) // Suppress volatile for generic type private volatile StreamObservers appendLogRequestObserver; // the appendEntries channel of this appender, taken when it creates its first stream; guarded by the write lock - private int appendEntriesIndex = -1; + private volatile int appendEntriesIndex = -1; private final boolean useSeparateHBChannel; private final GrpcServerMetrics grpcServerMetrics; @@ -427,9 +427,7 @@ void onCompleted() { @VisibleForTesting int getAppendEntriesIndex() { - try (AutoCloseableLock readLock = lock.readLock(caller, LOG::trace)) { - return appendEntriesIndex; - } + return appendEntriesIndex; } @Override