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

Sharad Agarwal updated HADOOP-3326:
-----------------------------------

    Attachment: 3326_2.patch

Attaching the patch. Fixed following
>> 1) Make copiersDone volatile.
on second thoughts this seems to be not required. Thread is interrupted for 
coming out of the wait condition.
>> 2) I am not sure if changing the ordering of triggering InMem merge and 
>> removing it from the neededOutputs is safe. Sharad, can you plz verify this?
keeping the same order
>> 3) Remove extra newlines.
done
>> 4) Since there is only one thread we can use notify() instead of notifyAll()
done
>> 5) The In-Mem merge trigger condition was
fixed the condition

Ran the local sort. Both the merge threads looks to be working fine.

> ReduceTask should not sleep for 200 ms while waiting for merge to finish
> ------------------------------------------------------------------------
>
>                 Key: HADOOP-3326
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3326
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: mapred
>            Reporter: Owen O'Malley
>            Assignee: Sharad Agarwal
>         Attachments: 3326_1.patch, 3326_2.patch
>
>
> Currently the merge code in Reduce task does:
> {code}
>             // Wait for the on-disk merge to complete
>             while (localFSMergeInProgress) {
>               Thread.sleep(200);
>             }
>             
>             //wait for an ongoing merge (if it is in flight) to complete
>             while (mergeInProgress) {
>               Thread.sleep(200);
>             }
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to