Uploaded image for project: 'Hadoop Map/Reduce'
  1. Hadoop Map/Reduce
  2. MAPREDUCE-1707

TaskRunner can get NPE in getting ugi from TaskTracker

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.22.0
    • 0.22.0
    • tasktracker
    • None
    • Reviewed
    • Fixed a bug that causes TaskRunner to get NPE in getting ugi from TaskTracker and subsequently crashes it resulting in a failing task after task-timeout period.

    Description

      The following code in TaskRunner can get NPE in the scenario described below.

            UserGroupInformation ugi = 
              tracker.getRunningJob(t.getJobID()).getUGI();
      

      The scenario:
      Tracker got a LaunchTaskAction; Task is localized and TaskRunner is started.
      Then Tracker got a KillJobAction; This would issue a kill for the task. But, kill will be a no-op because the task did not actually start; The job is removed from runningJobs.
      Then if TaskRunner calls tracker.getRunningJob(t.getJobID()), it will be null.

      Instead of TaskRunner doing a back call to tasktracker to get the ugi, tracker.getRunningJob(t.getJobID()).getUGI(), ugi should be passed a parameter in the constructor of TaskRunner.

      Attachments

        1. MAPREDUCE-1707-20100429.txt
          2 kB
          Vinod Kumar Vavilapalli
        2. MAPREDUCE-1707-20100430.txt
          3 kB
          Vinod Kumar Vavilapalli
        3. MAPREDUCE-1707-20100504-ydist.txt
          3 kB
          Vinod Kumar Vavilapalli

        Issue Links

          Activity

            People

              vinodkv Vinod Kumar Vavilapalli
              amareshwari Amareshwari Sriramadasu
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: