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

Kang Xiao updated MAPREDUCE-2116:
---------------------------------

    Attachment: 2116.4.patch

> optimize getTasksToKill to reduce JobTracker contention
> -------------------------------------------------------
>
>                 Key: MAPREDUCE-2116
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-2116
>             Project: Hadoop Map/Reduce
>          Issue Type: Improvement
>          Components: jobtracker
>            Reporter: Joydeep Sen Sarma
>            Assignee: Joydeep Sen Sarma
>         Attachments: 2116.1.patch, 2116.2.patch, 2116.3.patch, 2116.4.patch, 
> getTaskToKill.JPG
>
>
> getTasksToKill shows up as one of the top routines holding the JT lock. 
> Specifically, the translation from attemptid to tip is very expensive:
>         at java.util.TreeMap.getEntry(TreeMap.java:328)
>         at java.util.TreeMap.get(TreeMap.java:255)
>         at 
> org.apache.hadoop.mapred.TaskInProgress.shouldClose(TaskInProgress.java:500)
>         at 
> org.apache.hadoop.mapred.JobTracker.getTasksToKill(JobTracker.java:3464)
>           locked <0x00002aab6ebb6640> (a org.apache.hadoop.mapred.JobTracker)
>         at org.apache.hadoop.mapred.JobTracker.heartbeat(JobTracker.java:3181)
> this seems like an avoidable expense since the tip for a given attempt is 
> fixed (and one should not need a map lookup to find the association). on a 
> different note - not clear to me why TreeMaps are in use here (i didn't find 
> any iteration over these maps). any background info on why things are 
> arranged the way they are would be useful.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to