Skip to content

Commit

Permalink
TEZ-4566: NPE in TezChild while fetching attemptId when container is …
Browse files Browse the repository at this point in the history
…asked to shut down. (#358). (Ayush Saxena, reviewed by Laszlo Bodor)
  • Loading branch information
ayushtkn authored May 22, 2024
1 parent a1fcddb commit 30e9cdb
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,9 @@ protected ContainerTask callInternal() throws Exception {
+ " ms after starting to poll."
+ " TaskInfo: shouldDie: "
+ containerTask.shouldDie()
+ (containerTask.shouldDie() == true ? "" : ", currentTaskAttemptId: "
+ containerTask.getTaskSpec().getTaskAttemptID()));
+ (containerTask.shouldDie() ? "" : ", currentTaskAttemptId: "
+ (containerTask.getTaskSpec() == null ? "none"
: containerTask.getTaskSpec().getTaskAttemptID())));
return containerTask;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -249,28 +249,27 @@ public ContainerExecutionResult run() throws IOException, InterruptedException,
}
}

TezTaskAttemptID attemptId = containerTask.getTaskSpec().getTaskAttemptID();
Configuration taskConf;
if (containerTask.getTaskSpec().getTaskConf() != null) {
Configuration copy = new Configuration(defaultConf);
TezTaskRunner2.mergeTaskSpecConfToConf(containerTask.getTaskSpec(), copy);
taskConf = copy;
LoggingUtils.initLoggingContext(mdcContext, copy,
attemptId.getTaskID().getVertexID().getDAGID().toString(), attemptId.toString());
} else {
taskConf = defaultConf;
LoggingUtils.initLoggingContext(mdcContext, defaultConf,
attemptId.getTaskID().getVertexID().getDAGID().toString(), attemptId.toString());
}

TezCommonUtils.logCredentials(LOG, containerTask.getCredentials(), "containerTask");
if (containerTask.shouldDie()) {
LOG.info("ContainerTask returned shouldDie=true for container {}, Exiting", containerIdString);
shutdown();
return new ContainerExecutionResult(ContainerExecutionResult.ExitStatus.SUCCESS, null,
"Asked to die by the AM");
} else {
String loggerAddend = containerTask.getTaskSpec().getTaskAttemptID().toString();
TezTaskAttemptID attemptId = containerTask.getTaskSpec().getTaskAttemptID();
Configuration taskConf;
if (containerTask.getTaskSpec().getTaskConf() != null) {
Configuration copy = new Configuration(defaultConf);
TezTaskRunner2.mergeTaskSpecConfToConf(containerTask.getTaskSpec(), copy);
taskConf = copy;
LoggingUtils.initLoggingContext(mdcContext, copy, attemptId.getTaskID().getVertexID().getDAGID().toString(),
attemptId.toString());
} else {
taskConf = defaultConf;
LoggingUtils.initLoggingContext(mdcContext, defaultConf,
attemptId.getTaskID().getVertexID().getDAGID().toString(), attemptId.toString());
}
String loggerAddend = attemptId.toString();
taskCount++;
String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());
System.err.println(timeStamp + " Starting to run new task attempt: " +
Expand Down

0 comments on commit 30e9cdb

Please sign in to comment.