You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Nick Dimiduk (JIRA)" <ji...@apache.org> on 2014/03/19 20:03:47 UTC
[jira] [Updated] (HBASE-10792) RingBufferTruck does not release its
payload
[ https://issues.apache.org/jira/browse/HBASE-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nick Dimiduk updated HBASE-10792:
---------------------------------
Attachment: HBASE-10792.00.patch
Here's a patch that changes RBT a little. Payload content can now be inspected and references are removed at unload time. I don't know how this impacts failure cases, I need to read up on the disruptor a bit more.
(cc [~fenghh], [~stack])
> RingBufferTruck does not release its payload
> --------------------------------------------
>
> Key: HBASE-10792
> URL: https://issues.apache.org/jira/browse/HBASE-10792
> Project: HBase
> Issue Type: Bug
> Components: Performance, wal
> Affects Versions: 0.99.0
> Reporter: Nick Dimiduk
> Attachments: HBASE-10792.00.patch
>
>
> Run a write-heavy workload (PerfEval sequentialWrite) out of a trunk sandbox and watch as HBase eventually dies with an OOM: heap space. Examining the heap dump shows an extremely large retained size of KeyValue and RingBufferTrunk instances. By my eye, the default value of {{hbase.regionserver.wal.disruptor.event.count}} is too large for such a small default heap size, or the RBT instances need to release their payloads after consumers retrieve them.
--
This message was sent by Atlassian JIRA
(v6.2#6252)