[
https://issues.apache.org/jira/browse/MAPREDUCE-6334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14515065#comment-14515065
]
Jason Lowe commented on MAPREDUCE-6334:
---------------------------------------
Thanks for the patch, Eric! I think the patch will fix the particular issue
but introduces another. What if nothing goes wrong and the transfer was
successful? It looks like mapOutput will be non-null, but it would be bad if
we aborted the map output after it committed. I think we only want to abort
the mapOutput if something went wrong, so I think the abort logic should be
grouped with the code that's reporting an error occurred (i.e.: in the catch
clause).
> Fetcher#copyMapOutput is leaking usedMemory upon IOException during
> InMemoryMapOutput shuffle handler
> -----------------------------------------------------------------------------------------------------
>
> Key: MAPREDUCE-6334
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-6334
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Affects Versions: 2.7.0
> Reporter: Eric Payne
> Assignee: Eric Payne
> Priority: Blocker
> Attachments: MAPREDUCE-6334.001.patch
>
>
> We are seeing this happen when
> - an NM's disk goes bad during the creation of map output(s)
> - the reducer's fetcher can read the shuffle header and reserve the memory
> - but gets an IOException when trying to shuffle for InMemoryMapOutput
> - shuffle fetch retry is enabled
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)