Issue Details (XML | Word | Printable)

Key: HADOOP-5882
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Blocker Blocker
Assignee: Amareshwari Sriramadasu
Reporter: Jothi Padmanabhan
Votes: 0
Watchers: 3
Operations

If you were logged in you would be able to see more operations.
Hadoop Common

Progress is not updated when the New Reducer is running reduce phase

Created: 21/May/09 06:20 AM   Updated: 08/Jul/09 04:53 PM
Return to search
Component/s: None
Affects Version/s: 0.20.0
Fix Version/s: 0.20.1

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works patch-5882-0.20.txt 2009-06-02 11:30 AM Amareshwari Sriramadasu 1 kB
Text File Licensed for inclusion in ASF works patch-5882-1.txt 2009-05-29 10:11 AM Amareshwari Sriramadasu 1 kB
Text File Licensed for inclusion in ASF works patch-5882-2.txt 2009-06-02 11:45 AM Amareshwari Sriramadasu 1 kB
Text File Licensed for inclusion in ASF works patch-5882.txt 2009-05-22 11:43 AM Amareshwari Sriramadasu 7 kB

Hadoop Flags: Reviewed
Resolution Date: 03/Jun/09 06:31 AM


 Description  « Hide
The old reducer calls informReduceProgress on a key change to update the progress. This call or equivalent should be called for the new reducer as well.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Amareshwari Sriramadasu added a comment - 22/May/09 05:57 AM
Marking it a blocker, I see reducers failing because they couldn't report status for 600 seconds, during reduce phase.

Owen O'Malley added a comment - 22/May/09 05:58 AM
This needs to be addressed like the MapTask does it where the progress is updated when the code calls next. In the new api, the loop is handled in user code and therefore can't require the extra call to update progress.

Amareshwari Sriramadasu added a comment - 22/May/09 11:43 AM
Patch adding progress during reduce phase. Tested the patch manually to see progress updates during reduce phase.

Amareshwari Sriramadasu added a comment - 22/May/09 11:46 AM
test-patch result:
     [exec]
     [exec] -1 overall.
     [exec]
     [exec]     +1 @author.  The patch does not contain any @author tags.
     [exec]
     [exec]     -1 tests included.  The patch doesn't appear to include any new or modified tests.
     [exec]                         Please justify why no tests are needed for this patch.
     [exec]
     [exec]     +1 javadoc.  The javadoc tool did not generate any warning messages.
     [exec]
     [exec]     +1 javac.  The applied patch does not increase the total number of javac compiler warnings.
     [exec]
     [exec]     +1 findbugs.  The patch does not introduce any new Findbugs warnings.
     [exec]
     [exec]     +1 Eclipse classpath. The patch retains Eclipse classpath integrity.
     [exec]
     [exec]     -1 release audit.  The applied patch generated 497 release audit warnings (more than the trunk's current 495 warnings).
     [exec]

-1 release audit. There are no new files added in the patch. I dont know why it is giving -1 release audit.
-1 tests included. It is difficult to a unit test for observing progress updates during reduce phase. Patch has been tested manually

All mapred unit tests passed on my machine.


Hadoop QA added a comment - 26/May/09 01:31 AM
-1 overall. Here are the results of testing the latest attachment
http://issues.apache.org/jira/secure/attachment/12408794/patch-5882.txt
against trunk revision 778388.

+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 did not generate any 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 Eclipse classpath. The patch retains Eclipse classpath integrity.

-1 release audit. The applied patch generated 493 release audit warnings (more than the trunk's current 491 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-vesta.apache.org/398/testReport/
Release audit warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/398/artifact/trunk/current/releaseAuditDiffWarnings.txt
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/398/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/398/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/398/console

This message is automatically generated.


Amareshwari Sriramadasu added a comment - 26/May/09 10:52 AM
Test failures are not related to the patch.

Sharad Agarwal added a comment - 29/May/09 08:12 AM
Changing the ReduceContext and having the constructor with null progress object does not seem very elegant. Would it work, if we just intercept RawKeyValueIterator.next()? Something like:
final RawKeyValueIterator rawIter = rIter;
    rIter = new RawKeyValueIterator() {
      public void close() throws IOException {
        rawIter.close();
      }
      public DataInputBuffer getKey() throws IOException {
        return rawIter.getKey();
      }
      public Progress getProgress() {
        return rawIter.getProgress();
      }
      public DataInputBuffer getValue() throws IOException {
        return rawIter.getValue();
      }
      public boolean next() throws IOException {
        reducePhase.set(rawIter.getProgress().getProgress());
        return rawIter.next();
      }
    };

This looks much simpler to me.


Amareshwari Sriramadasu added a comment - 29/May/09 10:11 AM
Code changes as suggested Sharad, wraping RawKeyValueIterator to report progress. Tested the patch on cluster, it works fine

Hadoop QA added a comment - 31/May/09 12:36 AM
-1 overall. Here are the results of testing the latest attachment
http://issues.apache.org/jira/secure/attachment/12409363/patch-5882-1.txt
against trunk revision 780114.

+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 did not generate any 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 Eclipse classpath. The patch retains Eclipse classpath integrity.

+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-vesta.apache.org/437/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/437/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/437/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch-vesta.apache.org/437/console

This message is automatically generated.


Amareshwari Sriramadasu added a comment - 01/Jun/09 03:30 AM
Test failures are not related to the patch.
All tests passed on my machine

Tsz Wo (Nicholas), SZE added a comment - 01/Jun/09 06:26 PM
Seems that this was committed to 0.20 only but not 0.21.

Amareshwari Sriramadasu added a comment - 02/Jun/09 03:51 AM

Seems that this was committed to 0.20 only but not 0.21.

It is committed to 0.21, but not 0.20.1

The patch has been verified by running sort with new api, and observing progress update in redude from 66% to 100% (the reduce phase).


Amareshwari Sriramadasu added a comment - 02/Jun/09 07:57 AM
Patch does not apply to 0.20. I'm testing the patch for 0.20. Will upload a patch soon.

Amareshwari Sriramadasu added a comment - 02/Jun/09 08:38 AM
Patch does not apply to 0.20. I'm testing the patch for 0.20. Will upload a patch soon.

Amareshwari Sriramadasu added a comment - 02/Jun/09 11:04 AM
Uploaded patch doesnt solve the issue. Patch was wrongly created. I will upload correct patch for trunk and 0.20.

Amareshwari Sriramadasu added a comment - 02/Jun/09 11:30 AM
Patch for branch 0.20.1

Amareshwari Sriramadasu added a comment - 02/Jun/09 11:45 AM
patch for trunk

Amareshwari Sriramadasu added a comment - 03/Jun/09 04:31 AM
ant test and test patch passed on my machine.

Sharad Agarwal added a comment - 03/Jun/09 06:31 AM
I committed this to trunk and branch 0.20.1. Thanks Amareshwari!

Hudson added a comment - 11/Jun/09 07:59 PM