You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Vinod K V (JIRA)" <ji...@apache.org> on 2009/03/17 12:32:58 UTC

[jira] Updated: (HADOOP-5516) TaskMemoryManagerThread crashes in a corner case

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

Vinod K V updated HADOOP-5516:
------------------------------

    Attachment: HADOOP-5516-1.txt

This seems to happen when ProcfsBasedProcessTree.getProcessTree() when the root process is no longer alive. Attaching a patch for branch-0.20. This does the following:
 - When the root process is not found, getProcessTree() method returns an empty process-tree.
 - Added another null check in the same method when we cannot read process information from /proc vfs.
 - Surrounded the memory management code of a single task with a try-catch block so that MemoryManager thread continues to function on other tasks even in the event of occurrence of uncaught exceptions on one task.
 - Removed a spurious HashMap.put() inside an iterator on the same map processTreeInfoMap . This was pointed out by Hemanth.
 - Modified test-case to verify that method calls on ProcfsBasedProcessTree are sane even if the process-tree is not alive or is gone.

> TaskMemoryManagerThread crashes in a corner case
> ------------------------------------------------
>
>                 Key: HADOOP-5516
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5516
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: mapred
>    Affects Versions: 0.20.0
>            Reporter: Vinod K V
>            Assignee: Vinod K V
>            Priority: Blocker
>         Attachments: HADOOP-5516-1.txt
>
>
> TT's stdout says.
> {code}
> Exception in thread "org.apache.hadoop.mapred.TaskMemoryManagerThread" java.lang.NullPointerException
>         at org.apache.hadoop.util.ProcfsBasedProcessTree.getProcessTree(ProcfsBasedProcessTree.java:126)
>         at org.apache.hadoop.mapred.TaskMemoryManagerThread.run(TaskMemoryManagerThread.java:200)
> {code}
> TaskMemoryManager crashes and no further memory management is done.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.