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

Jason Lowe commented on MAPREDUCE-4842:
---------------------------------------

Here's the sequence of events that I believe led to the hang during shuffle.  
See {{MergeManager}} for context of variable references.

# Fetchers started fetching data
# Enough data finishes transferring to reach the {{commitMemory}} threshold and 
an in-memory merge starts
# While the merge takes place some of the output data is freed before the merge 
completes, lowering {{commitMemory}} and {{usedMemory}} which allows more data 
to be fetched
# Eventually we try to fetch too much data because {{usedMemory}} exceeds 
{{memoryLimit}} and further fetchers are told to WAIT
# All of the outstanding fetches complete and call {{closeInMemoryFile}}, but 
we don't start a merge because the previous merge is still marked in progress
# Merge completes, allowing a new merge to be started on the next 
{{closeInMemoryFile}} call
# With no outstanding fetches and no new fetches allowed, we never call 
{{closeInMemoryFile}} again and never start the next merge
# With no merge in progress and therefore nothing to wait upon, fetcher threads 
proceed to pummel the {{MergeManager}} asking for merge data reservations that 
are never given, and the reducer log grows rather rapidly
                
> Shuffle race can hang reducer
> -----------------------------
>
>                 Key: MAPREDUCE-4842
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4842
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: mrv2
>    Affects Versions: 2.0.3-alpha, 0.23.5
>            Reporter: Jason Lowe
>
> Saw an instance where the shuffle caused multiple reducers in a job to hang.  
> It looked similar to the problem described in MAPREDUCE-3721, where the 
> fetchers were all being told to WAIT by the MergeManager but no merge was 
> taking place.

--
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

Reply via email to