[ 
https://issues.apache.org/jira/browse/HADOOP-10839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Nauroth updated HADOOP-10839:
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 2.6.0
                   3.0.0
           Status: Resolved  (was: Patch Available)

I committed this to trunk and branch-2.  Shanyu, thank you for contributing 
this patch.

> Add unregisterSource() to MetricsSystem API
> -------------------------------------------
>
>                 Key: HADOOP-10839
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10839
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: metrics
>    Affects Versions: 2.4.1
>            Reporter: shanyu zhao
>            Assignee: shanyu zhao
>             Fix For: 3.0.0, 2.6.0
>
>         Attachments: HADOOP-10839.2.patch, HADOOP-10839.patch
>
>
> Currently the MetrisSystem API has register() method to register a 
> MetricsSource but doesn't have unregister() method. This means once a 
> MetricsSource is registered with the MetricsSystem, it will be there forever 
> until the MetricsSystem is shut down. This in some cases can cause Java 
> OutOfMemoryError.
> One such case is in file system metrics implementation. The new 
> AbstractFileSystem/FileContext framework does not implement a cache so every 
> file system access can lead to the creation of a NativeFileSystem instance. 
> (refer to HADOOP-6356). And all these NativeFileSystem needs to share the 
> same instance of MetricsSystemImpl, which means we cannot shut down 
> MetricsSystem to clean up all the MetricsSources that has been registered but 
> no longer active. Over time the MetricsSource instance accumulates and 
> eventually we saw OutOfMemoryError.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to