You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ratis.apache.org by sh...@apache.org on 2020/06/03 05:52:26 UTC

[incubator-ratis] branch master updated: RATIS-964. Fix failed UT: testRestartLogAppender (#118)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new b3241ea  RATIS-964. Fix failed UT: testRestartLogAppender (#118)
b3241ea is described below

commit b3241eaa6a9768a9378041722b9f38b0392f1d64
Author: runzhiwang <51...@users.noreply.github.com>
AuthorDate: Wed Jun 3 13:52:15 2020 +0800

    RATIS-964. Fix failed UT: testRestartLogAppender (#118)
---
 .../java/org/apache/ratis/grpc/server/GrpcLogAppender.java  |  7 ++++++-
 .../main/java/org/apache/ratis/server/impl/LogAppender.java |  2 +-
 .../java/org/apache/ratis/grpc/TestLogAppenderWithGrpc.java | 13 +++++++++----
 3 files changed, 16 insertions(+), 6 deletions(-)

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 439ffe8..d4d9535 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
@@ -127,7 +127,6 @@ public class GrpcLogAppender extends LogAppender {
     }
 
     Optional.ofNullable(appendLogRequestObserver).ifPresent(StreamObserver::onCompleted);
-    grpcServerMetrics.unregister();
   }
 
   private long getWaitTimeMs() {
@@ -157,6 +156,12 @@ public class GrpcLogAppender extends LogAppender {
   }
 
   @Override
+  public void stopAppender() {
+    grpcServerMetrics.unregister();
+    super.stopAppender();
+  }
+
+  @Override
   protected boolean shouldSendRequest() {
     return appendLogRequestObserver == null || super.shouldSendRequest();
   }
diff --git a/ratis-server/src/main/java/org/apache/ratis/server/impl/LogAppender.java b/ratis-server/src/main/java/org/apache/ratis/server/impl/LogAppender.java
index 18252a8..09daf21 100644
--- a/ratis-server/src/main/java/org/apache/ratis/server/impl/LogAppender.java
+++ b/ratis-server/src/main/java/org/apache/ratis/server/impl/LogAppender.java
@@ -173,7 +173,7 @@ public class LogAppender {
     return daemon.isRunning();
   }
 
-  void stopAppender() {
+  public void stopAppender() {
     daemon.stop();
   }
 
diff --git a/ratis-test/src/test/java/org/apache/ratis/grpc/TestLogAppenderWithGrpc.java b/ratis-test/src/test/java/org/apache/ratis/grpc/TestLogAppenderWithGrpc.java
index 5747a84..50c1c13 100644
--- a/ratis-test/src/test/java/org/apache/ratis/grpc/TestLogAppenderWithGrpc.java
+++ b/ratis-test/src/test/java/org/apache/ratis/grpc/TestLogAppenderWithGrpc.java
@@ -125,9 +125,14 @@ public class TestLogAppenderWithGrpc
       }
     }
 
-    // assert INCONSISTENCY counter >= 1
-    // If old LogAppender die before new LogAppender start, INCONSISTENCY equal to 1,
-    // else INCONSISTENCY greater than 1
-    Assert.assertTrue(leaderMetrics.getRegistry().counter(counter).getCount() >= 1L);
+    final RaftServerImpl newLeader = waitForLeader(cluster);
+    if (leader == newLeader) {
+      final GrpcServerMetrics newleaderMetrics = new GrpcServerMetrics(leader.getMemberId().toString());
+
+      // assert INCONSISTENCY counter >= 1
+      // If old LogAppender die before new LogAppender start, INCONSISTENCY equal to 1,
+      // else INCONSISTENCY greater than 1
+      Assert.assertTrue(newleaderMetrics.getRegistry().counter(counter).getCount() >= 1L);
+    }
   }
 }