[
https://issues.apache.org/jira/browse/HBASE-13694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14545295#comment-14545295
]
Anoop Sam John commented on HBASE-13694:
----------------------------------------
{code}
/**
* On construction, adds the size of this call to the running count of
outstanding call sizes.
* Presumption is that we are put on a queue while we wait on an executor to
run us. During this
* time we occupy heap.
*/
// The constructor is shutdown so only RpcServer in this class can make one
of these.
CallRunner(final RpcServerInterface rpcServer, final Call call) {
this.call = call;
this.rpcServer = rpcServer;
// Add size of the call to queue size.
this.rpcServer.addCallSize(call.getSize());
this.status = getStatus();
}
{code}
So after the RpcServer.CurCall.set(null) call, we are cleared of the call
heap? No right? Am I missing any?
> CallQueueSize is incorrectly decremented until the response is sent
> -------------------------------------------------------------------
>
> Key: HBASE-13694
> URL: https://issues.apache.org/jira/browse/HBASE-13694
> Project: HBase
> Issue Type: Bug
> Components: master, regionserver, rpc
> Affects Versions: 2.0.0, 1.1.0, 1.0.2, 1.2.0
> Reporter: Esteban Gutierrez
> Assignee: Esteban Gutierrez
> Attachments:
> 0001-HBASE-13694-CallQueueSize-is-incorrectly-decremented.patch
>
>
> We should decrement the CallQueueSize as soon as we no longer need the call
> around, e.g. after {{RpcServer.CurCall.set(null)}} otherwise we will be only
> pushing back other client requests while we send the response back to the
> client that originated the call.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)