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

Misha Dmitriev commented on HADOOP-14938:
-----------------------------------------

The test failure looks completely unrelated.

I'll leave it to reviewers to comment about the findbugs report. In my opinion, 
this kind of formal analysis could reveal a bug in other situation, but the 
code here is correct. If it is not correct, please give an example of when it 
may behave incorrectly.

> Configuration.updatingResource map should be initialized lazily
> ---------------------------------------------------------------
>
>                 Key: HADOOP-14938
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14938
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Misha Dmitriev
>            Assignee: Misha Dmitriev
>         Attachments: HADOOP-14938.01.patch
>
>
> Using jxray (www.jxray.com), I've analyzed a heap dump of YARN RM running in 
> a big cluster. The tool uncovered several inefficiencies in the RM memory. It 
> turns out that one of the biggest sources of memory waste, responsible for 
> almost 1/4 of used memory, is empty ConcurrentHashMap instances in 
> org.apache.hadoop.conf.Configuration.updatingResource:
> {code}
> 905,551K (24.0%): java.util.concurrent.ConcurrentHashMap: 22118 / 100% of 
> empty 905,551K (24.0%)
> ↖org.apache.hadoop.conf.Configuration.updatingResource
> ↖{j.u.WeakHashMap}.keys
> ↖Java Static org.apache.hadoop.conf.Configuration.REGISTRY
> {code}
> That is, there are 22118 empty ConcurrentHashMaps here, and they collectively 
> waste ~905MB of memory. This is caused by eager initialization of these maps. 
> To address this problem, we should initialize them lazily.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to