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

stack commented on HBASE-16165:
-------------------------------

Go for it [~Apache9] Bug fix.

> Decrease RpcServer.callQueueSize before writeResponse causes OOM
> ----------------------------------------------------------------
>
>                 Key: HBASE-16165
>                 URL: https://issues.apache.org/jira/browse/HBASE-16165
>             Project: HBase
>          Issue Type: Bug
>          Components: IPC/RPC, rpc
>    Affects Versions: 2.0.0, 1.3.0, 1.4.0, 1.1.6, 1.2.3, 0.98.22
>            Reporter: Duo Zhang
>            Assignee: Guanghao Zhang
>            Priority: Minor
>              Labels: trivial
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 1.1.7, 0.98.23, 1.2.4
>
>         Attachments: HBASE-16165.patch
>
>
> In RpcServer, we use {{callQueueSizeInBytes}} to avoid queuing too many calls 
> which causes OOM. But in {{CallRunner.run}}, we decrease it before send the 
> response back. And even after calling {{sendResponseIfReady}}, the call 
> object could stay in our heap for a long time if we can not write out the 
> response(That's why we need a Responder thread...). This makes it possible 
> that the actual size of all call object in heap is larger than 
> {{maxQueueSizeInBytes}} and causes OOM.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to