You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/07/07 12:34:31 UTC
[iotdb] 02/02: add step tracker
This is an automated email from the ASF dual-hosted git repository.
xingtanzjr pushed a commit to branch multileader_restart_test
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 2509fc7d1743f266d185bee4e26bc03d15a7cac5
Author: Jinrui.Zhang <xi...@gmail.com>
AuthorDate: Thu Jul 7 20:34:19 2022 +0800
add step tracker
---
.../iotdb/consensus/multileader/client/DispatchLogHandler.java | 5 +++++
.../multileader/service/MultiLeaderRPCServiceProcessor.java | 4 ++++
2 files changed, 9 insertions(+)
diff --git a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
index 14a2b4ad58..d10263b540 100644
--- a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
+++ b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/client/DispatchLogHandler.java
@@ -19,6 +19,7 @@
package org.apache.iotdb.consensus.multileader.client;
+import org.apache.iotdb.commons.StepTracker;
import org.apache.iotdb.consensus.multileader.logdispatcher.LogDispatcher.LogDispatcherThread;
import org.apache.iotdb.consensus.multileader.logdispatcher.PendingBatch;
import org.apache.iotdb.consensus.multileader.thrift.TSyncLogRes;
@@ -37,10 +38,12 @@ public class DispatchLogHandler implements AsyncMethodCallback<TSyncLogRes> {
private final LogDispatcherThread thread;
private final PendingBatch batch;
private int retryCount;
+ private final long startTime;
public DispatchLogHandler(LogDispatcherThread thread, PendingBatch batch) {
this.thread = thread;
this.batch = batch;
+ this.startTime = System.nanoTime();
}
@Override
@@ -58,6 +61,8 @@ public class DispatchLogHandler implements AsyncMethodCallback<TSyncLogRes> {
} else {
thread.getSyncStatus().removeBatch(batch);
}
+ StepTracker.trace("dispatcherSendBatch", 10, startTime, System.nanoTime());
+ StepTracker.trace("dispatcherBatchSize", 10, 0, this.batch.getBatches().size() * 1000L);
}
@Override
diff --git a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/service/MultiLeaderRPCServiceProcessor.java b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/service/MultiLeaderRPCServiceProcessor.java
index 196bf120ff..c8fe9fbfe2 100644
--- a/consensus/src/main/java/org/apache/iotdb/consensus/multileader/service/MultiLeaderRPCServiceProcessor.java
+++ b/consensus/src/main/java/org/apache/iotdb/consensus/multileader/service/MultiLeaderRPCServiceProcessor.java
@@ -20,6 +20,7 @@
package org.apache.iotdb.consensus.multileader.service;
import org.apache.iotdb.common.rpc.thrift.TSStatus;
+import org.apache.iotdb.commons.StepTracker;
import org.apache.iotdb.commons.consensus.ConsensusGroupId;
import org.apache.iotdb.consensus.common.request.ByteBufferConsensusRequest;
import org.apache.iotdb.consensus.multileader.MultiLeaderConsensus;
@@ -52,6 +53,7 @@ public class MultiLeaderRPCServiceProcessor implements MultiLeaderConsensusIServ
@Override
public void syncLog(TSyncLogReq req, AsyncMethodCallback<TSyncLogRes> resultHandler)
throws TException {
+ long startTime = System.nanoTime();
try {
ConsensusGroupId groupId =
ConsensusGroupId.Factory.createFromTConsensusGroupId(req.getConsensusGroupId());
@@ -82,6 +84,8 @@ public class MultiLeaderRPCServiceProcessor implements MultiLeaderConsensusIServ
resultHandler.onComplete(new TSyncLogRes(statuses));
} catch (Exception e) {
resultHandler.onError(e);
+ } finally {
+ StepTracker.trace("ProcessSyncLog", 10, startTime, System.nanoTime());
}
}