You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by yu...@apache.org on 2020/09/02 04:01:28 UTC
[incubator-iotdb] branch cluster_performance updated: recEiver
This is an automated email from the ASF dual-hosted git repository.
yuyuankang pushed a commit to branch cluster_performance
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
The following commit(s) were added to refs/heads/cluster_performance by this push:
new 87e2fa2 recEiver
87e2fa2 is described below
commit 87e2fa2b5db85f218b103244c80cee4edd9e241a
Author: Ring-k <yu...@hotmail.com>
AuthorDate: Wed Sep 2 12:00:42 2020 +0800
recEiver
---
.../main/java/org/apache/iotdb/cluster/server/Timer.java | 16 ++++++++++++++++
.../apache/iotdb/cluster/server/member/RaftMember.java | 7 +++++++
2 files changed, 23 insertions(+)
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/Timer.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/Timer.java
index 4eb8516..a056734 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/Timer.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/Timer.java
@@ -33,6 +33,11 @@ public class Timer {
public static AtomicLong raftMemberVoteCounterCounter = new AtomicLong(0);
public static AtomicLong raftMemberLogParseMS = new AtomicLong(0);
public static AtomicLong raftMemberLogParseCounter = new AtomicLong(0);
+ public static AtomicLong rafTMemberReceiverWaitForPrevLogMS = new AtomicLong(0);
+ public static AtomicLong rafTMemberReceiverWaitForPrevLogCounter = new AtomicLong(0);
+ public static AtomicLong rafTMemberMayBeAppendMS = new AtomicLong(0);
+ public static AtomicLong rafTMemberMayBeAppendCounter = new AtomicLong(0);
+
private static final String dataGroupMemberProcessPlanLocallyMSString = "Data group member - process plan locally : ";
private static final String dataGroupMemberWaitLeaderMSString = "Data group member - wait leader: ";
@@ -48,6 +53,8 @@ public class Timer {
private static final String raftMemberSendLogAyncString = "Raft member - send log aync: ";
private static final String raftMemberVoteCounterString = "Raft member - vote counter: ";
private static final String raftMemberLogParseString = "Raft member - log parse: ";
+ private static final String rafTMemberReceiverWaitForPrevLogString = "Raft member - receiver wait for prev log: ";
+ private static final String rafTMemberMayBeAppendString = "Raft member - receiver wait for prev log: ";
@@ -116,6 +123,15 @@ public class Timer {
+ raftMemberLogParseMS.get()/1000000L + ", "
+ raftMemberLogParseCounter + ", "
+ (double) raftMemberLogParseMS.get()/1000000L / raftMemberLogParseCounter.get() + "\n";
+ result += rafTMemberReceiverWaitForPrevLogString
+ + rafTMemberReceiverWaitForPrevLogMS.get()/1000000L + ", "
+ + rafTMemberReceiverWaitForPrevLogCounter + ", "
+ + (double) rafTMemberReceiverWaitForPrevLogMS.get()/1000000L / rafTMemberReceiverWaitForPrevLogCounter.get() + "\n";
+ result += rafTMemberMayBeAppendString
+ + rafTMemberMayBeAppendMS.get()/1000000L + ", "
+ + rafTMemberMayBeAppendCounter + ", "
+ + (double) rafTMemberMayBeAppendMS.get()/1000000L / rafTMemberMayBeAppendCounter.get() + "\n";
+
return result;
}
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java
index 5304818..5e91492 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java
@@ -439,6 +439,7 @@ public abstract class RaftMember {
private long appendEntry(long prevLogIndex, long prevLogTerm, long leaderCommit, Log log) {
long resp;
+ long start = System.nanoTime();
long lastLogIndex = logManager.getLastLogIndex();
if (lastLogIndex < prevLogIndex) {
if (!waitForPrevLog(prevLogIndex)) {
@@ -446,6 +447,10 @@ public abstract class RaftMember {
}
}
+ Timer.rafTMemberReceiverWaitForPrevLogMS.addAndGet(System.nanoTime() - start);
+ Timer.rafTMemberReceiverWaitForPrevLogCounter.incrementAndGet();
+
+ start = System.nanoTime();
synchronized (logManager) {
long success = logManager.maybeAppend(prevLogIndex, prevLogTerm, leaderCommit, log);
if (success != -1) {
@@ -456,6 +461,8 @@ public abstract class RaftMember {
resp = Response.RESPONSE_LOG_MISMATCH;
}
}
+ Timer.rafTMemberMayBeAppendMS.addAndGet(System.nanoTime() - start);
+ Timer.rafTMemberMayBeAppendCounter.incrementAndGet();
return resp;
}