Hadoop Common
  1. Hadoop Common
  2. HADOOP-3940

Reduce often attempts in memory merge with no work

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.18.0
    • Fix Version/s: 0.18.1
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      ReduceTask.ReduceCopier.ShuffleRamManager initializes numRequiredMapOutputs to 0, so one of the predicates in ShuffleRamManager::waitForDataToMerge, numPendingRequests < numRequiredMapOutputs, is false until the first map output is fetched and false again after the last map output is fetched. The InMemFSMergeThread thread will loop busily in this state.

      1. 3940-1.patch
        2 kB
        Chris Douglas
      2. 3940-0.patch
        0.7 kB
        Chris Douglas

        Activity

        Hide
        Chris Douglas added a comment -

        Simplest fix, waiting on numRequiredMapOutputs == 0.

        Initializing numRequiredMapOutputs to Integer.MAX_VALUE would require a different check at the end; this should handle both.

        Show
        Chris Douglas added a comment - Simplest fix, waiting on numRequiredMapOutputs == 0. Initializing numRequiredMapOutputs to Integer.MAX_VALUE would require a different check at the end; this should handle both.
        Hide
        Chris Douglas added a comment - - edited

        [ edit - nevermind ]

        Show
        Chris Douglas added a comment - - edited [ edit - nevermind ]
        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12388084/3940-0.patch
        against trunk revision 685425.

        +1 @author. The patch does not contain any @author tags.

        -1 tests included. The patch doesn't appear to include any new or modified tests.
        Please justify why no tests are needed for this patch.

        -1 javadoc. The javadoc tool appears to have generated 1 warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        -1 core tests. The patch failed core unit tests.

        -1 contrib tests. The patch failed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/testReport/
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/artifact/trunk/build/test/checkstyle-errors.html
        Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12388084/3940-0.patch against trunk revision 685425. +1 @author. The patch does not contain any @author tags. -1 tests included. The patch doesn't appear to include any new or modified tests. Please justify why no tests are needed for this patch. -1 javadoc. The javadoc tool appears to have generated 1 warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed core unit tests. -1 contrib tests. The patch failed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/testReport/ Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/artifact/trunk/build/test/checkstyle-errors.html Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/3058/console This message is automatically generated.
        Hide
        Chris Douglas added a comment -

        Added some comments to waitForDataToMerge, particularly explaining why numRequiredMapOutputs == 0 is a special case, per Arun's suggestion.

        Test failures are due to HADOOP-3946.

        Show
        Chris Douglas added a comment - Added some comments to waitForDataToMerge, particularly explaining why numRequiredMapOutputs == 0 is a special case, per Arun's suggestion. Test failures are due to HADOOP-3946 .
        Hide
        Arun C Murthy added a comment -

        +1

        Show
        Arun C Murthy added a comment - +1
        Hide
        Chris Douglas added a comment -

        I just committed this

        Show
        Chris Douglas added a comment - I just committed this
        Hide
        Hudson added a comment -
        Show
        Hudson added a comment - Integrated in Hadoop-trunk #581 (See http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/581/ )
        Hide
        Owen O'Malley added a comment -

        There was a suggestion on the list to include this in 0.18.1. That sounds right to me. Thoughts?

        Show
        Owen O'Malley added a comment - There was a suggestion on the list to include this in 0.18.1. That sounds right to me. Thoughts?
        Hide
        Chris Douglas added a comment -

        +1

        Merged into 0.18 branch

        Show
        Chris Douglas added a comment - +1 Merged into 0.18 branch
        Hide
        Hudson added a comment -
        Show
        Hudson added a comment - Integrated in Hadoop-trunk #595 (See http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/595/ )

          People

          • Assignee:
            Chris Douglas
            Reporter:
            Chris Douglas
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development