You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Vladimir Klimontovich (JIRA)" <ji...@apache.org> on 2012/10/09 16:43:03 UTC

[jira] [Commented] (MAPREDUCE-4715) Heap memory growing when JVM reuse option enabled

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

Vladimir Klimontovich commented on MAPREDUCE-4715:
--------------------------------------------------

FileSystem class keeps a static cache of all FileSystem objects. See FileSystem#CACHE static field. The cache key is a pair of file system URI (string) and Configuration object. To fix that I'd suggest to run FileSystem.closeAll() (which clears the cache) somewhere in the cleanup section of TaskRunner.java
                
> Heap memory growing when JVM reuse option enabled
> -------------------------------------------------
>
>                 Key: MAPREDUCE-4715
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4715
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: job submission
>    Affects Versions: 0.20.2
>         Environment: Linux, cdh3u5
>            Reporter: Boris Ryakhovskiy
>            Priority: Minor
>         Attachments: VisualVM_screenshot.png
>
>
> When mapred.job.reuse.jvm.num.tasks option is set to 100 or more tasks, JVM fails with "java.lang.OutOfMemoryError: Java heap space" error message. Jobs itself are small and job heap size is set to -Xmx200m .
> It looks like the reason of the issue is a FileSystem$Cache object which collects JobConf objects from all jobs which were executed in current JVM. GC root for the FileSystem$Cache is ApplicationShutdownHooks class (cannot attach screenshot from visualvm)
> In my case each of JobConf objects allocates ~500K (50M total in case of 100 jobs).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira