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 "Todd Lipcon (JIRA)" <ji...@apache.org> on 2009/10/10 03:00:32 UTC

[jira] Updated: (MAPREDUCE-1089) Fair Scheduler preemption triggers NPE when tasks are scheduled but not running

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

Todd Lipcon updated MAPREDUCE-1089:
-----------------------------------

    Attachment: mapreduce-1089.txt

Here's a patch to fix this issue. Unfortunately it's not triggered by the unit tests, since it uses a fake JobTracker which doesn't have quite the same behavior as the real one with regard to TaskStatus population. I'd like to get a unit test in that catches this issue before committing, but wanted to gather feedback on this patch now.

> Fair Scheduler preemption triggers NPE when tasks are scheduled but not running
> -------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-1089
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-1089
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: contrib/fair-share
>    Affects Versions: 0.21.0
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>         Attachments: mapreduce-1089.txt
>
>
> We see exceptions like this when preemption runs when a task has been scheduled on a TT but has not yet started running.
> 2009-10-09 14:30:53,989 INFO org.apache.hadoop.mapred.FairScheduler: Should preempt 2 MAP tasks for job_200910091420_0006: tasksDueToMinShare = 2, tasksDueToFairShare = 0
> 2009-10-09 14:30:54,036 ERROR org.apache.hadoop.mapred.FairScheduler: Exception in fair scheduler UpdateThread
> java.lang.NullPointerException
>         at org.apache.hadoop.mapred.FairScheduler$2.compare(FairScheduler.java:1015)
>         at org.apache.hadoop.mapred.FairScheduler$2.compare(FairScheduler.java:1013)
>         at java.util.Arrays.mergeSort(Arrays.java:1270)
>         at java.util.Arrays.sort(Arrays.java:1210)
>         at java.util.Collections.sort(Collections.java:159)
>         at org.apache.hadoop.mapred.FairScheduler.preemptTasks(FairScheduler.java:1013)
>         at org.apache.hadoop.mapred.FairScheduler.preemptTasksIfNecessary(FairScheduler.java:911)
>         at org.apache.hadoop.mapred.FairScheduler$UpdateThread.run(FairScheduler.java:286)

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