[ https://issues.apache.org/jira/browse/MAPREDUCE-1316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12798724#action_12798724 ]
Hemanth Yamijala commented on MAPREDUCE-1316: --------------------------------------------- Amar, you make a good point about duplicating the task references. I agree that seems like an overhead. My real worry is that knowledge of the different task types seems to built now in the removeJobTasks API. However, without complicating the code, I am unable to think of a better way than what I already suggested. I suppose one thing we can do is to iterate over the tasktypes and have a method in JIP to give all TIPs for a tasktype. This method in JIP can return the right array of TIPs for a given type. But I am not convinced myself it is significantly better than the current model. So, maybe the current implementation in your patch is still the best thing to do for now. > JobTracker holds stale references to retired jobs via unreported tasks > ----------------------------------------------------------------------- > > Key: MAPREDUCE-1316 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1316 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: jobtracker > Reporter: Amar Kamat > Assignee: Amar Kamat > Priority: Blocker > Attachments: mapreduce-1316-v1.11.patch, mapreduce-1316-v1.7.patch > > > JobTracker fails to remove _unreported_ tasks' mapping from _taskToTIPMap_ if > the job finishes and retires. _Unreported tasks_ refers to tasks that were > scheduled but the tasktracker did not report back with the task status. In > such cases a stale reference is held to TaskInProgress (and thus > JobInProgress) long after the job is gone leading to memory leak. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.