Job Information
A job in general holds some basic information, including:
- BSPJobID
- User id: See BSPJobContext.getUser() wherein configures via conf.get("user.name")
- Job file: The path to job.xml. See BSPJobClient.submitJobInternal()
- Job name: The name of this job.
- JobStatus: Mainly JobStatus.State
- superstepCount:
- StartTime
- FinishTime
- numBSPTasks: The number of BSP tasks to be launched.
- Tasks: Actual launched TaskInProgresses according to numBSPTasks.
TODO: An object that holds multiple tasks execution including successful/ failed/ current task
TODO: 2d array?
-
- task id: TaskID object.
- startTime: System.currentTimeMillis()
- partition: The _i_th numBSPTasks
- RawSplit: The _i_th RawSplit if RawSplit not null
- SuccessfulTaskId: Set when TaskInProgress.completed() is called. TODO: isSuccessful
- firstTaskId: The first task id.
- currentTaskId:
- MaxTaskAttempts: (constant) 4
- MAX_TASK_EXEC: 1 TODO: what is this?
- TaskStatus:
- Phase: Denote at which phase current task is. See Task Phase below.
- State: Denote the current state the task is. See Task State below.
Job Status
A job status contains:
- PREP: This status is started when a job is created until all tasks are dispatched to groom servers.
- SetUp a job
- Scheding
- RUNNING: When tasks are executed in GroomServers.
- SUCCEEDED: When all tasks are in the SUCCEEDED state.
- FAILED: When one or more tasks exceed its max attempt
- KILLED: User/ Admin issues a kill command.
Task Phase
A single task phase.
- STARTING: Initial phase
- COMPUTE: Within bsp()
- BARRIER_SYNC: Reaching sync().
- CLEANUP: Finish entire supersteps execution.
Task State
This only indicate a task state.
- UNASSIGNED: Initial state of a task.
- RUNNING: Only valid when a task is either in COMPUTE or in BARRIER_SYNC phase.
- SUCCEEDED: A task completes its execution at the end of CLEANUP phase.
- FAILED: An exception or an error occurrs.
- KILLED
Job Task Relation