Skip to content

Commit e6c1d3c

Browse files
[WX-1361] Remove Confusing Error Message (#7449)
Co-authored-by: Adam Nichols <[email protected]>
1 parent 2c3101a commit e6c1d3c

File tree

2 files changed

+18
-4
lines changed

2 files changed

+18
-4
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## 88 Release Notes
44

5+
### Improved status reporting behavior
6+
7+
When Cromwell restarts during a workflow that is failing, it no longer reports pending tasks as a reason for that failure.
8+
59
### Optional docker soft links
610

711
Cromwell now allows opting into configured soft links on shared file systems such as HPC environments. More details can

engine/src/main/scala/cromwell/engine/workflow/lifecycle/execution/WorkflowExecutionActor.scala

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,16 @@ case class WorkflowExecutionActor(params: WorkflowExecutionActorParams)
181181
case Event(JobFailedNonRetryableResponse(jobKey, _: JobNotFoundException, _), _) if restarting =>
182182
val benignException =
183183
new Exception(
184-
"Cromwell server was restarted while this workflow was running. As part of the restart process, Cromwell attempted to reconnect to this job, however it was never started in the first place. This is a benign failure and not the cause of failure for this workflow, it can be safely ignored."
184+
"Task did not start because a previous job has already failed."
185185
) with NoStackTrace
186-
handleNonRetryableFailure(stateData, jobKey, benignException)
186+
187+
handleNonRetryableFailure(stateData,
188+
jobKey,
189+
benignException,
190+
None,
191+
Map.empty,
192+
includeInWorkflowLevelFailures = false
193+
)
187194
}
188195

189196
/* ********************** */
@@ -470,11 +477,14 @@ case class WorkflowExecutionActor(params: WorkflowExecutionActorParams)
470477
failedJobKey: JobKey,
471478
reason: Throwable,
472479
returnCode: Option[Int] = None,
473-
jobExecutionMap: JobExecutionMap = Map.empty
480+
jobExecutionMap: JobExecutionMap = Map.empty,
481+
includeInWorkflowLevelFailures: Boolean = true
474482
) = {
475483
pushFailedCallMetadata(failedJobKey, returnCode, reason, retryableFailure = false)
476484

477-
val dataWithFailure = stateData.executionFailure(failedJobKey, reason, jobExecutionMap)
485+
val dataWithFailure =
486+
if (includeInWorkflowLevelFailures) stateData.executionFailure(failedJobKey, reason, jobExecutionMap)
487+
else stateData
478488
/*
479489
* If new calls are allowed don't seal the execution store as we want to go as far as possible.
480490
*

0 commit comments

Comments
 (0)