Class TaskAttemptID

All Implemented Interfaces:
Comparable<ID>, Writable, WritableComparable<ID>

@Public @Stable public class TaskAttemptID extends TaskAttemptID
TaskAttemptID represents the immutable and unique identifier for a task attempt. Each task attempt is one particular instance of a Map or Reduce Task identified by its TaskID. TaskAttemptID consists of 2 parts. First part is the TaskID, that this TaskAttemptID belongs to. Second part is the task attempt number.
An example TaskAttemptID is : attempt_200707121733_0003_m_000005_0 , which represents the zeroth task attempt for the fifth map task in the third job running at the jobtracker started at 200707121733.

Applications should never construct or parse TaskAttemptID strings , but rather use appropriate constructors or forName(String) method.

See Also:
  • Constructor Details

    • TaskAttemptID

      public TaskAttemptID(TaskID taskId, int id)
      Constructs a TaskAttemptID object from given TaskID.
      Parameters:
      taskId - TaskID that this task belongs to
      id - the task attempt number
    • TaskAttemptID

      @Deprecated public TaskAttemptID(String jtIdentifier, int jobId, boolean isMap, int taskId, int id)
      Constructs a TaskId object from given parts.
      Parameters:
      jtIdentifier - jobTracker identifier
      jobId - job number
      isMap - whether the tip is a map
      taskId - taskId number
      id - the task attempt number
    • TaskAttemptID

      public TaskAttemptID(String jtIdentifier, int jobId, TaskType type, int taskId, int id)
      Constructs a TaskId object from given parts.
      Parameters:
      jtIdentifier - jobTracker identifier
      jobId - job number
      type - the TaskType
      taskId - taskId number
      id - the task attempt number
    • TaskAttemptID

      public TaskAttemptID()
  • Method Details

    • downgrade

      public static TaskAttemptID downgrade(TaskAttemptID old)
      Downgrade a new TaskAttemptID to an old one
      Parameters:
      old - the new id
      Returns:
      either old or a new TaskAttemptID constructed to match old
    • getTaskID

      public TaskID getTaskID()
      Description copied from class: TaskAttemptID
      Returns the TaskID object that this task attempt belongs to
      Overrides:
      getTaskID in class TaskAttemptID
    • getJobID

      public JobID getJobID()
      Description copied from class: TaskAttemptID
      Returns the JobID object that this task attempt belongs to
      Overrides:
      getJobID in class TaskAttemptID
    • read

      @Deprecated public static TaskAttemptID read(DataInput in) throws IOException
      Deprecated.
      Throws:
      IOException
    • forName

      public static TaskAttemptID forName(String str) throws IllegalArgumentException
      Construct a TaskAttemptID object from given string
      Returns:
      constructed TaskAttemptID object or null if the given String is null
      Throws:
      IllegalArgumentException - if the given string is malformed
    • getTaskAttemptIDsPattern

      @Deprecated public static String getTaskAttemptIDsPattern(String jtIdentifier, Integer jobId, Boolean isMap, Integer taskId, Integer attemptId)
      Deprecated.
      Returns a regex pattern which matches task attempt IDs. Arguments can be given null, in which case that part of the regex will be generic. For example to obtain a regex matching all task attempt IDs of any jobtracker, in any job, of the first map task, we would use :
       
       TaskAttemptID.getTaskAttemptIDsPattern(null, null, true, 1, null);
       
      which will return :
       "attempt_[^_]*_[0-9]*_m_000001_[0-9]*" 
      Parameters:
      jtIdentifier - jobTracker identifier, or null
      jobId - job number, or null
      isMap - whether the tip is a map, or null
      taskId - taskId number, or null
      attemptId - the task attempt number, or null
      Returns:
      a regex pattern matching TaskAttemptIDs
    • getTaskAttemptIDsPattern

      @Deprecated public static String getTaskAttemptIDsPattern(String jtIdentifier, Integer jobId, TaskType type, Integer taskId, Integer attemptId)
      Deprecated.
      Returns a regex pattern which matches task attempt IDs. Arguments can be given null, in which case that part of the regex will be generic. For example to obtain a regex matching all task attempt IDs of any jobtracker, in any job, of the first map task, we would use :
       
       TaskAttemptID.getTaskAttemptIDsPattern(null, null, TaskType.MAP, 1, null);
       
      which will return :
       "attempt_[^_]*_[0-9]*_m_000001_[0-9]*" 
      Parameters:
      jtIdentifier - jobTracker identifier, or null
      jobId - job number, or null
      type - the TaskType
      taskId - taskId number, or null
      attemptId - the task attempt number, or null
      Returns:
      a regex pattern matching TaskAttemptIDs