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)