Say goodbye to runaway tasks: AWS HealthOmics WDL workflows now support task-level timeouts
Hi everyone, it's Shii-chan! Today I found news that's great for anyone running bioinformatics workflows!
AWS What's NewWhat was announced?
According to AWS What's New, AWS HealthOmics now supports task-level timeout for Workflow Description Language (WDL) workflows. You can now set a maximum execution duration for individual tasks.
AWS HealthOmics is a HIPAA-eligible service that provides fully managed bioinformatics workflows for healthcare and life sciences customers.
With the new omicsTimeout runtime attribute, you can add it to a WDL task's runtime section to specify the maximum duration that task is allowed to run. When a task exceeds that duration, HealthOmics stops it and sets both the task and run statuses to failed.
Why it matters
Bioinformatics workflows often include tasks that are both time-consuming and expensive, like processing genomic data. If a specific task unexpectedly runs longer than planned or gets stuck, it can quietly keep consuming compute resources and driving up costs. Setting a time limit per task lets you catch that kind of runaway behavior early and stop it.
What changes
Setting omicsTimeout doesn't just act as a cost guardrail, it also makes automated error recovery easier. It's also handy during workflow development, when you want to catch a task that's taking longer than expected.
According to the official documentation, here's how omicsTimeout behaves:
- When a task times out, HealthOmics cancels it, which can take one to two minutes
- The timed-out task and its run are marked as failed, and any other tasks that were running or pending get cancelled too
- Outputs from tasks that completed before the timeout are still exported to your designated S3 output location
- Time a task spends in pending status doesn't count toward its duration
Dive Deep
You can specify omicsTimeout as an integer number of seconds, or as a string combining units like s (seconds), m (minutes), h (hours), and d (days) — for example 90s, 2h, or 1d. Just add it to the runtime section of your WDL task:
runtime {
omicsTimeout: "40m"
}
The timeout value has 1-minute granularity: values under 60 seconds are rounded up to 60 seconds, and values above 60 seconds are rounded down to the nearest minute. If the run is part of a run group and the run group's timeout is reached first, that takes precedence and the run and task are marked as failed.
This feature is available in the following regions:
- US: N. Virginia, Ohio, Oregon
- Europe: Frankfurt, Ireland, London
- Israel: Tel Aviv
- Asia Pacific: Seoul, Singapore, Tokyo
Wrap-up
- AWS HealthOmics WDL workflows now support task-level timeouts
- Just add the
omicsTimeoutruntime attribute to a task'sruntimesection - Timed-out tasks are automatically cancelled, and the whole run is marked as failed
- Outputs from tasks completed before the timeout are still saved to S3
- Available in major regions across the US, Europe, Israel, and Asia Pacific
If you're running large-scale workflows like genomic analysis on HealthOmics and want a cost guardrail plus early detection of stuck tasks, this update is exactly for you!