[ 
https://issues.apache.org/jira/browse/HDFS-16040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17352032#comment-17352032
 ] 

Simbarashe Dzinamarira commented on HDFS-16040:
-----------------------------------------------

Took a second look to check is the rpcQueueTime is being calculated correctly. 
I believe it is.
{noformat}
details.set(Timing.QUEUE,
    startTime - timestampNanos - details.get(Timing.ENQUEUE));{noformat}
startTime is when the call is removed from the call queue for processing. (The 
final time it is actually removed, not intermediate pops withs re-queuing)

timestampNanos is when the call was received.

details.get(Timing.ENQUEUE) is the time it took to initially place the call on 
the call queue. (Doesn't count the re-queues in the rpc server).

The logic above will correctly count the times between pops and re-queues as 
part of the rpcQueueTime.

> RpcQueueTime metric counts requeued calls as unique events.
> -----------------------------------------------------------
>
>                 Key: HDFS-16040
>                 URL: https://issues.apache.org/jira/browse/HDFS-16040
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: hdfs
>    Affects Versions: 2.10.0, 3.3.0
>            Reporter: Simbarashe Dzinamarira
>            Assignee: Simbarashe Dzinamarira
>            Priority: Major
>         Attachments: HDFS-16040.001.patch, HDFS-16040.002.patch, 
> HDFS-16040.003.patch
>
>
> The RpcQueueTime metric is updated every time a call is re-queued while 
> waiting for the server state to reach the call's client's state ID. This is 
> in contrast to RpcProcessingTime which is only updated when the call if 
> finally processed.
> On the Observer NameNode this can result in RpcQueueTimeNumOps being much 
> larger than RpcProcessingTimeNumOps. The re-queueing is an internal 
> optimization to avoid blocking and shouldn't result in an inflated metric.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to