[
https://issues.apache.org/jira/browse/HBASE-11267?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14012491#comment-14012491
]
Ted Yu commented on HBASE-11267:
--------------------------------
If we don't use Interns class in DynamicMetricsRegistry, that means
MetricsInfoImpl can be instantiated directly.
I can provide a patch if the above is accepted.
> Dynamic metrics2 metrics may consume large amount of heap memory
> ----------------------------------------------------------------
>
> Key: HBASE-11267
> URL: https://issues.apache.org/jira/browse/HBASE-11267
> Project: HBase
> Issue Type: Bug
> Reporter: Ted Yu
> Fix For: 0.99.0
>
>
> User sunweiei provided the following jmap output in 0.96 deployment:
> {code}
> num #instances #bytes class name
> ----------------------------------------------
> 1: 14917882 3396492464 [C
> 2: 1996994 2118021808 [B
> 3: 43341650 1733666000 java.util.LinkedHashMap$Entry
> 4: 14453983 1156550896 [Ljava.util.HashMap$Entry;
> 5: 14446577 924580928
> org.apache.hadoop.metrics2.lib.Interns$CacheWith2Keys$2
> {code}
> Heap consumption by Interns$CacheWith2Keys$2 could be due to calls to
> Interns.info() in DynamicMetricsRegistry.
> This scenario would arise when large number of regions are tracked through
> metrics2.
> Interns class doesn't provide API to remove entries in its internal Map.
> Meaning, DynamicMetricsRegistry#clearMetrics() is unable to reclaim that part
> of heap.
--
This message was sent by Atlassian JIRA
(v6.2#6252)