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

shanyu zhao updated HADOOP-10840:
---------------------------------

    Attachment: HADOOP-10840.2.patch

Hi [~cnauroth], sorry I missed the live test scenarios which I have to manually 
configure a storage account. The problem with TestAzureConcurrentOutOfBandIo is 
I removed the registration code with DefaultFileSystem in production code but 
not the unit test files. I fixed that in the new patch (v2).

Regarding the two windows test failure, looks like they are not related to my 
changes. It has something to do with system clock. Do they always fail or just 
transient? I cannot reproduce in my Ubuntu box. Let me try it on Windows box.

I removed the publishMetricsNow() from fileSystemClosed() because I moved it to 
unregisterSource(). The expectation is the caller calls unregisterSource() 
before calling fileSystemClosed() which will push the last metrics out. To 
prevent confusion when someone doesn't call unregisterSource() but just call 
fileSystemClosed() I just added publishMetricsNow() to fileSystemClosed() under 
the condition that "numFileSystems==1", this way before we are going to 
shutdown the metrics system, we'll do another "safety" push, usually at this 
point the metrics sources should be empty.



> Fix OutOfMemoryError caused by metrics system in Azure File System
> ------------------------------------------------------------------
>
>                 Key: HADOOP-10840
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10840
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 2.4.1
>            Reporter: shanyu zhao
>            Assignee: shanyu zhao
>         Attachments: HADOOP-10840.1.patch, HADOOP-10840.2.patch, 
> HADOOP-10840.patch
>
>
> In Hadoop 2.x the Hadoop File System framework changed and no cache is 
> implemented (refer to HADOOP-6356). This means for every WASB access, a new 
> NativeAzureFileSystem is created, along which a Metrics source created and 
> added to MetricsSystemImpl. Over time the sources accumulated, eating memory 
> and causing Java OutOfMemoryError.
> The fix is to utilize the unregisterSource() method added to MetricsSystem in 
> HADOOP-10839.



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

Reply via email to