Hi Vinod,

I will post a review ASAP.  Thanks for your information.



Guodong


On Wed, Apr 17, 2013 at 3:20 PM, Vinod Kone <[email protected]> wrote:

> Hi Guodong,
>
> Thanks a ton for finding and fixing the bug! If you can submit the patch
> through Apache review board <https://reviews.apache.org> (you might need
> to
> sign up for an Apache account), we can get it committed asap!
>
> If you are using "git", you could use "support/post-reviews.py" in our repo
> to help you submit the patch (or you can just manually upload the diff to
> review board). Let me know if you have any questions/need help.
>
>
>
> On Wed, Apr 17, 2013 at 12:09 AM, 王国栋 <[email protected]> wrote:
>
> > hi,
> >
> > When I am trying to use fairscheduler as the low level scheduler for
> > hadoop, when I submit a job, I got NULL pointer exception in jobtracker.
> >
> > I go through the hadoop code, and I think it is a bug in MesosScheduler,
> > Because when the job is submitted to jobtracker, the status of job is
> PREP,
> > and at this time, fairscheduler will not schedule any task of this job,
> so
> >
> >     // Let the underlying task scheduler do the actual task scheduling.
> >     List<Task> tasks = taskScheduler.assignTasks(taskTracker);
> > tasks will be null. And then the following exception happnes.
> >
> > 13/04/17 11:30:14 INFO ipc.Server: IPC Server handler 8 on 9011, call
> > heartbeat(org.apache.hadoop.mapred.TaskTrackerStatus@5f0704e1, false,
> > false, true, 0) from 10.47.6.24:32978: error: java.io.IOException:
> > java.lang.NullPointerException
> > java.io.IOException: java.lang.NullPointerException
> > at
> >
> >
> org.apache.hadoop.mapred.MesosScheduler.assignTasks(MesosScheduler.java:229)
> >
> >
> > Also, I modify MesosScheduler a little bit, and it seems that the bug is
> > fixed.
> > the diff is as follow
> >
> > --- a/hadoop/mesos/src/java/org/apache/hadoop/mapred/MesosScheduler.java
> > +++ b/hadoop/mesos/src/java/org/apache/hadoop/mapred/MesosScheduler.java
> > @@ -224,13 +224,14 @@ public class MesosScheduler extends TaskScheduler
> > implements Scheduler {
> >      // Let the underlying task scheduler do the actual task scheduling.
> >      List<Task> tasks = taskScheduler.assignTasks(taskTracker);
> >
> > -    // Keep track of which TaskTracker contains which tasks.
> > -    for (Task task : tasks) {
> > -      LOG.info("Assigning task : " + task.getTaskID()
> > -          + " to tracker " + tracker);
> > -      mesosTrackers.get(tracker).hadoopTasks.add(task.getTaskID());
> > +    if(task != null)  {
> > +    // Keep track of whenich TaskTracker contains which tasks.
> > +        for (Task TASK_LOSTTRACKER_JVM_HEAP : tasks) {
> > +            LOG.info("Assigning task : " + task.getTaskID()
> > +            + " to tracker " + tracker);
> > +
>  mesosTrackers.get(tracker).hadoopTasks.add(task.getTaskID());
> > +        }
> >      }
> > -
> >      return tasks;
> >    }
> >
> > Does anybody can help me to identify this bug?
> > Thanks a lot.
> >
> > Guodong
> >
>

Reply via email to