You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Elton Tian (JIRA)" <ji...@apache.org> on 2011/03/19 03:09:29 UTC
[jira] Created: (MAPREDUCE-2396) InMemFSMergeThread.doInMemMerge()
miss the lass MapOutput for each merge round
InMemFSMergeThread.doInMemMerge() miss the lass MapOutput for each merge round
--------------------------------------------------------------------------------
Key: MAPREDUCE-2396
URL: https://issues.apache.org/jira/browse/MAPREDUCE-2396
Project: Hadoop Map/Reduce
Issue Type: Bug
Affects Versions: 0.20.2
Reporter: Elton Tian
Priority: Critical
In ReduceTask.shuffleInMemory(), once a new MapOutput is read, the ramManager.closeInMemoryFile() is called to notify waitForDataToMerge() to check if a in memory merge is required. If the threshold is met, the doInMemMerge() may start before the MapOutput just read been added to mapOutputsFilesInMemory. So the "dataAvailable.notify();" should be removed and let the noteCopiedMapOutput() notify the merge.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (MAPREDUCE-2396) InMemFSMergeThread.doInMemMerge()
miss the last MapOutput for each merge round
Posted by "Elton Tian (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAPREDUCE-2396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Elton Tian updated MAPREDUCE-2396:
----------------------------------
Summary: InMemFSMergeThread.doInMemMerge() miss the last MapOutput for each merge round (was: InMemFSMergeThread.doInMemMerge() miss the lass MapOutput for each merge round )
> InMemFSMergeThread.doInMemMerge() miss the last MapOutput for each merge round
> --------------------------------------------------------------------------------
>
> Key: MAPREDUCE-2396
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-2396
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Affects Versions: 0.20.2
> Reporter: Elton Tian
> Priority: Critical
>
> In ReduceTask.shuffleInMemory(), once a new MapOutput is read, the ramManager.closeInMemoryFile() is called to notify waitForDataToMerge() to check if a in memory merge is required. If the threshold is met, the doInMemMerge() may start before the MapOutput just read been added to mapOutputsFilesInMemory. So the "dataAvailable.notify();" should be removed and let the noteCopiedMapOutput() notify the merge.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira