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

stack commented on HADOOP-11301:
--------------------------------

Looks much cleaner. Should these two statements be swapped?

{code}
176           updateAttrCache();
177           if (getAllMetrics) {
{code}

... so we only updateAttrCache if getAllMetrics is true? 

> [optionally] update jmx cache to drop old metrics
> -------------------------------------------------
>
>                 Key: HADOOP-11301
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11301
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Maysam Yabandeh
>            Assignee: Maysam Yabandeh
>         Attachments: HADOOP-11301.v01.patch, HADOOP-11301.v02.patch
>
>
> MetricsSourceAdapter::updateJmxCache() skips updating the info cache if no 
> new metric is added since last time:
> {code}
>       int oldCacheSize = attrCache.size();
>       int newCacheSize = updateAttrCache();
>       if (oldCacheSize < newCacheSize) {
>         updateInfoCache();
>       }
> {code}
> This behavior is not desirable in some applications. For example nntop 
> (HDFS-6982) reports the top users via jmx. The list is updated after each 
> report. The previously reported top users hence should be removed from the 
> cache upon each report request.
> In our production run of nntop we made a change to ignore the size check and 
> always perform updateInfoCache. I am planning to submit a patch including 
> this change. The feature can be enabled by a configuration parameter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to