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 10d29c9 ignore insert
10d29c9 is described below
commit 10d29c97003b77d8574c4bb81944e0ed10bc5eff
Author: Ring-k <[email protected]>
AuthorDate: Wed Sep 2 10:30:31 2020 +0800
ignore insert
---
.../main/java/org/apache/iotdb/cluster/server/Timer.java | 7 +++++++
.../apache/iotdb/cluster/server/member/RaftMember.java | 16 ++++++++++++++--
2 files changed, 21 insertions(+), 2 deletions(-)
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 cde55f2..4eb8516 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
@@ -31,6 +31,8 @@ public class Timer {
public static AtomicLong raftMemberSendLogAyncCounter = new AtomicLong(0);
public static AtomicLong raftMemberVoteCounterMS = new AtomicLong(0);
public static AtomicLong raftMemberVoteCounterCounter = new AtomicLong(0);
+ public static AtomicLong raftMemberLogParseMS = new AtomicLong(0);
+ public static AtomicLong raftMemberLogParseCounter = new AtomicLong(0);
private static final String dataGroupMemberProcessPlanLocallyMSString =
"Data group member - process plan locally : ";
private static final String dataGroupMemberWaitLeaderMSString = "Data group
member - wait leader: ";
@@ -45,6 +47,7 @@ public class Timer {
private static final String raftMemberWaitForPrevLogString = "Raft member -
wait for prev log: ";
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: ";
@@ -109,6 +112,10 @@ public class Timer {
+ raftMemberVoteCounterMS.get()/1000000L + ", "
+ raftMemberVoteCounterCounter + ", "
+ (double) raftMemberVoteCounterMS.get()/1000000L /
raftMemberVoteCounterCounter.get() + "\n";
+ result += raftMemberLogParseString
+ + raftMemberLogParseMS.get()/1000000L + ", "
+ + raftMemberLogParseCounter + ", "
+ + (double) raftMemberLogParseMS.get()/1000000L /
raftMemberLogParseCounter.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 d43e890..5304818 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
@@ -96,6 +96,7 @@ import
org.apache.iotdb.db.exception.metadata.PathNotExistException;
import org.apache.iotdb.db.exception.metadata.StorageGroupAlreadySetException;
import org.apache.iotdb.db.exception.metadata.StorageGroupNotSetException;
import org.apache.iotdb.db.qp.physical.PhysicalPlan;
+import org.apache.iotdb.db.qp.physical.crud.InsertPlan;
import org.apache.iotdb.db.utils.TestOnly;
import org.apache.iotdb.rpc.RpcUtils;
import org.apache.iotdb.service.rpc.thrift.TSStatus;
@@ -492,8 +493,19 @@ public abstract class RaftMember {
return checkResult;
}
-// Log log = LogParser.getINSTANCE().parse(request.entry);
- Log log = new EmptyContentLog(request.prevLogIndex + 1,
request.prevLogTerm);
+ long start1 = System.nanoTime();
+ Log log = LogParser.getINSTANCE().parse(request.entry);
+ Timer.raftMemberLogParseMS.addAndGet(System.nanoTime() - start1);
+ Timer.raftMemberLogParseCounter.incrementAndGet();
+
+ if (log instanceof PhysicalPlanLog) {
+ PhysicalPlanLog physicalPlanLog = (PhysicalPlanLog) log;
+ PhysicalPlan plan = physicalPlanLog.getPlan();
+ if (plan instanceof InsertPlan) {
+ physicalPlanLog.setPlan(null);
+ }
+ }
+
long result = appendEntry(request.prevLogIndex, request.prevLogTerm,
request.leaderCommit,
log);
logger.debug("{} AppendEntryRequest of {} completed", name, log);