Search before asking
What happened
When a workflow is paused while it contains tasks waiting for a TaskGroup slot, those tasks enter an infinite pause-retry loop. The task state remains SUBMITTED_SUCCESS, the workflow state remains READY_PAUSE, and neither can ever progress.
What you expected to happen
The task should be paused, releasing its TaskGroup queue slot. The workflow should reach the PAUSE state.
How to reproduce
- Create a workflow containing a task that uses a TaskGroup
- Start the workflow → the task enters SUBMITTED_SUCCESS and waits for the TaskGroup slot
- Immediately pause the workflow
Anything else
A simple approach is to add a check in TaskSubmittedStateAction#onPauseEvent: if the task is waiting for a TaskGroup slot, the Paused event can also be triggered directly.
A better approach would be to introduce a dedicated WAITING_TASK_GROUP status. This would not only simplify the pause event handling, but also allow users to see the real workflow state on the UI.
Version
dev
Are you willing to submit PR?
Code of Conduct
Search before asking
What happened
When a workflow is paused while it contains tasks waiting for a TaskGroup slot, those tasks enter an infinite pause-retry loop. The task state remains SUBMITTED_SUCCESS, the workflow state remains READY_PAUSE, and neither can ever progress.
What you expected to happen
The task should be paused, releasing its TaskGroup queue slot. The workflow should reach the PAUSE state.
How to reproduce
Anything else
A simple approach is to add a check in TaskSubmittedStateAction#onPauseEvent: if the task is waiting for a TaskGroup slot, the Paused event can also be triggered directly.
A better approach would be to introduce a dedicated WAITING_TASK_GROUP status. This would not only simplify the pause event handling, but also allow users to see the real workflow state on the UI.
Version
dev
Are you willing to submit PR?
Code of Conduct