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:
- 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
- currentTaskId:
- 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: When to decide a Job is killed?
Task Phase
- STARTING
- COMPUTE
- BARRIER_SYNC
- CLEANUP
Task State
- RUNNING
- SUCCEEDED
- FAILED
- UNASSIGNED
- KILLED