[
https://issues.apache.org/jira/browse/TEZ-2024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14304501#comment-14304501
]
Jeff Zhang commented on TEZ-2024:
---------------------------------
bq. From a recovery point of view, it might need a start before a finish. Are
there known cases where an end is recorded even though a start did not happen
where the end state is not KILLED?
It is possible finish happens before it is started. Here's one case that
TaskAttempt is terminated before it is started. I think we can just verify that
the status must be KILLED/FAILURE if there's no StartedEvent before
FinishedEvent.
{code}
try {
remoteTaskSpec = ta.createRemoteTaskSpec();
LOG.info("remoteTaskSpec:" + remoteTaskSpec);
} catch (AMUserCodeException e) {
String msg = "Exception in " + e.getSource() + ", taskAttempt=" + ta;
LOG.error(msg, e);
String diag = msg + ", " + e.getMessage() + ", " +
ExceptionUtils.getStackTrace(e.getCause());
new TerminateTransition(FAILED_HELPER).transition(ta,
new TaskAttemptEventAttemptFailed(ta.getID(),
TaskAttemptEventType.TA_FAILED, diag,
TaskAttemptTerminationCause.APPLICATION_ERROR));
return TaskAttemptStateInternal.FAILED;
}
{code}
> TaskFinishedEvent may not be logged in recovery
> ------------------------------------------------
>
> Key: TEZ-2024
> URL: https://issues.apache.org/jira/browse/TEZ-2024
> Project: Apache Tez
> Issue Type: Bug
> Reporter: Jeff Zhang
> Assignee: Jeff Zhang
> Attachments: TEZ-2024-1.patch
>
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)