hadoop-yarn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Misha Dmitriev (JIRA)" <j...@apache.org>
Subject [jira] [Created] (YARN-7320) Duplicate LiteralByteStrings in SystemCredentialsForAppsProto.credentialsForApp_
Date Thu, 12 Oct 2017 17:32:00 GMT
Misha Dmitriev created YARN-7320:

             Summary: Duplicate LiteralByteStrings in SystemCredentialsForAppsProto.credentialsForApp_
                 Key: YARN-7320
                 URL: https://issues.apache.org/jira/browse/YARN-7320
             Project: Hadoop YARN
          Issue Type: Improvement
            Reporter: Misha Dmitriev

Using jxray (www.jxray.com) I've analyzed several heap dumps from YARN Resource Manager running
in a big cluster. The tool uncovered several sources of memory waste. One problem, which results
in wasting more than a quarter of all memory, is a large number of duplicate {{LiteralByteString}}
objects coming from the following reference chain:

1,011,810K (26.9%): byte[]: 5416705 / 100% dup arrays (22108 unique)

That is, collectively reference chains that look as above hold in memory 5.4 million {{LiteralByteString}}
objects, but only ~22 thousand of these objects are unique. Deduplicating these objects, e.g.
using a Google Object Interner instance, would save ~1GB of memory.

It looks like the main place where the above {{LiteralByteString}}s are created and attached
to the {{SystemCredentialsForAppsProto}} objects is in {{NodeHeartbeatResponsePBImpl.java}},
method {{addSystemCredentialsToProto()}}. Probably adding a call to an interner there will
fix the problem. wi 

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: yarn-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-dev-help@hadoop.apache.org

View raw message