You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2018/09/06 16:31:00 UTC

[jira] [Created] (HBASE-21162) Revert suspicious change to BoundedByteBufferPool and disable use of direct buffers for IPC reservoir by default

Andrew Purtell created HBASE-21162:
--------------------------------------

             Summary: Revert suspicious change to BoundedByteBufferPool and disable use of direct buffers for IPC reservoir by default
                 Key: HBASE-21162
                 URL: https://issues.apache.org/jira/browse/HBASE-21162
             Project: HBase
          Issue Type: Bug
    Affects Versions: 1.4.7
            Reporter: Andrew Purtell
            Assignee: Andrew Purtell
             Fix For: 1.5.0, 1.4.8


We had a production incident where we traced the issue to a direct buffer leak. On a hunch we tried setting hbase.ipc.server.reservoir.enabled = false and after that no native memory leak could be observed in any regionserver process under the triggering load. 

On HBASE-19239 (Fix findbugs and error-prone issues) I made a change to BoundedByteBufferPool that is suspicious given this finding. It was committed to branch-1.4 and branch-1. I'm going to revert this change. 

In addition the allocation of direct memory for the server RPC reservoir is a bit problematic in that tracing native memory or direct buffer leaks to a particular class or compilation unit is difficult, so I also propose allocating the reservoir on the heap by default instead. Should there be a leak it is much easier to do an analysis of a heap dump with familiar tools to find it. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)