HADOOP-14732. ProtobufRpcEngine should use Time.monotonicNow to measure durations. Contributed by Hanisha Koneru.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8bef4eca Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8bef4eca Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8bef4eca Branch: refs/heads/HDFS-7240 Commit: 8bef4eca28a3466707cc4ea0de0330449319a5eb Parents: 5558792 Author: Arpit Agarwal <a...@apache.org> Authored: Mon Aug 14 15:53:35 2017 -0700 Committer: Arpit Agarwal <a...@apache.org> Committed: Mon Aug 14 15:53:35 2017 -0700 ---------------------------------------------------------------------- .../java/org/apache/hadoop/ipc/ProtobufRpcEngine.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8bef4eca/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java index 639bbad..2c0cfe5 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/ProtobufRpcEngine.java @@ -190,7 +190,7 @@ public class ProtobufRpcEngine implements RpcEngine { throws ServiceException { long startTime = 0; if (LOG.isDebugEnabled()) { - startTime = Time.now(); + startTime = Time.monotonicNow(); } if (args.length != 2) { // RpcController + Message @@ -245,7 +245,7 @@ public class ProtobufRpcEngine implements RpcEngine { } if (LOG.isDebugEnabled()) { - long callTime = Time.now() - startTime; + long callTime = Time.monotonicNow() - startTime; LOG.debug("Call: " + method.getName() + " took " + callTime + "ms"); } @@ -373,19 +373,19 @@ public class ProtobufRpcEngine implements RpcEngine { this.server = currentCallInfo.get().server; this.call = Server.getCurCall().get(); this.methodName = currentCallInfo.get().methodName; - this.setupTime = Time.now(); + this.setupTime = Time.monotonicNow(); } @Override public void setResponse(Message message) { - long processingTime = Time.now() - setupTime; + long processingTime = Time.monotonicNow() - setupTime; call.setDeferredResponse(RpcWritable.wrap(message)); server.updateDeferredMetrics(methodName, processingTime); } @Override public void error(Throwable t) { - long processingTime = Time.now() - setupTime; + long processingTime = Time.monotonicNow() - setupTime; String detailedMetricsName = t.getClass().getSimpleName(); server.updateDeferredMetrics(detailedMetricsName, processingTime); call.setDeferredError(t); @@ -513,7 +513,7 @@ public class ProtobufRpcEngine implements RpcEngine { Message param = request.getValue(prototype); Message result; - long startTime = Time.now(); + long startTime = Time.monotonicNow(); int qTime = (int) (startTime - receiveTime); Exception exception = null; boolean isDeferred = false; @@ -537,7 +537,7 @@ public class ProtobufRpcEngine implements RpcEngine { throw e; } finally { currentCallInfo.set(null); - int processingTime = (int) (Time.now() - startTime); + int processingTime = (int) (Time.monotonicNow() - startTime); if (LOG.isDebugEnabled()) { String msg = "Served: " + methodName + (isDeferred ? ", deferred" : "") + --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org