You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Hadoop QA (JIRA)" <ji...@apache.org> on 2008/07/27 05:20:31 UTC

[jira] Commented: (HADOOP-3840) Support pluggable speculative execution

    [ https://issues.apache.org/jira/browse/HADOOP-3840?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12617234#action_12617234 ] 

Hadoop QA commented on HADOOP-3840:
-----------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12386966/HADOOP-3840-v1.txt
  against trunk revision 679930.

    +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 appears to introduce 1 new Findbugs warnings.

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

    +1 core tests.  The patch passed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

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

This message is automatically generated.

> Support pluggable speculative execution
> ---------------------------------------
>
>                 Key: HADOOP-3840
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3840
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: mapred
>            Reporter: Matei Zaharia
>            Assignee: Matei Zaharia
>            Priority: Minor
>         Attachments: HADOOP-3840-v1.txt
>
>
> HADOOP-3412 introduced an way to plug in a job scheduler for MapReduce. However, the job schedulers all use JobInProgress.obtainNewMapTask or obtainNewReduceTask to select tasks to run from each job, which uses a threshold-based speculative execution algorithm that has several shortcomings (see JIRAs about the scheduler not speculating tasks that freeze after having 80% progress for example). As a first step towards supporting better speculative execution policies while not breaking backwards compatibility, it makes sense to make the speculative execution policy pluggable. Luckily this is easy - we just need an interface around obtainNewMapTask and obtainNewReduceTask. This JIRA suggests adding a TaskSelector abstract class which, given a TaskTracker and a JobInProgress, chooses a task to run on the tracker. A default implementation that uses the current methods in JobInProgress is provided. Both TaskSchedulers in trunk are changed to use TaskSelector.
> In addition, there are methods to count how many speculative tasks a job needs, since TaskInProgress.hasSpeculative() may not work if we change the algorithm for selecting speculative tasks. This count is needed for some schedulers, such as a fair scheduler.

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