this.useNewApi = this.jobConf.getUseNewMapper();
this.isMapperOutput = jobConf.getBoolean(MRConfig.IS_MAP_PROCESSOR,
false);
jobConf.setInt(MRJobConfig.APPLICATION_ATTEMPT_ID,
outputContext.getDAGAttemptNumber());
TaskAttemptID taskAttemptId = new TaskAttemptID(new TaskID(Long.toString(
outputContext.getApplicationId().getClusterTimestamp()),
outputContext.getApplicationId().getId(),
(isMapperOutput ? TaskType.MAP : TaskType.REDUCE),
outputContext.getTaskIndex()),
outputContext.getTaskAttemptNumber());
jobConf.set(JobContext.TASK_ATTEMPT_ID, taskAttemptId.toString());
jobConf.set(JobContext.TASK_ID, taskAttemptId.getTaskID().toString());
jobConf.setBoolean(JobContext.TASK_ISMAP, isMapperOutput);
jobConf.setInt(JobContext.TASK_PARTITION,
taskAttemptId.getTaskID().getId());
jobConf.set(JobContext.ID, taskAttemptId.getJobID().toString());
outputRecordCounter = outputContext.getCounters().findCounter(
TaskCounter.MAP_OUTPUT_RECORDS);
fileOutputByteCounter = outputContext.getCounters().findCounter(
FileOutputFormatCounter.BYTES_WRITTEN);