[
https://issues.apache.org/jira/browse/MAPREDUCE-2026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12920654#action_12920654
]
Scott Chen commented on MAPREDUCE-2026:
---------------------------------------
bq. Or what if we launch a separate thread to do counters compute?
We also thought about this idea of updating counters in a background thread.
I just created MAPREDUCE-2131 for it.
> JobTracker.getJobCounters() should not hold JobTracker lock while calling
> JobInProgress.getCounters()
> -----------------------------------------------------------------------------------------------------
>
> Key: MAPREDUCE-2026
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-2026
> Project: Hadoop Map/Reduce
> Issue Type: Improvement
> Reporter: Scott Chen
> Assignee: Joydeep Sen Sarma
> Fix For: 0.22.0
>
> Attachments: 2026.1.patch, MAPREDUCE-2026.txt
>
>
> JobTracker.getJobCounter() will lock JobTracker and call
> JobInProgress.getCounters().
> JobInProgress.getCounters() can be very expensive because it aggregates all
> the task counters.
> We found that from the JobTracker jstacks that this method is one of the
> bottleneck of the JobTracker performance.
> JobInProgress.getCounters() should be able to be called out side the
> JobTracker lock because it already has JobInProgress lock.
> For example, it is used by jobdetails.jsp without a JobTracker lock.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.