-
Bug
-
Resolution: Unresolved
-
Medium
-
9
-
Minor
-
159
-
Issue Summary
A race condition occurs when a manual loop transition (Global) coincides with an automated transition sequence, leading to an unintended and incorrect issue status change. This issue is particularly evident when an agent manually triggers a loop transition at the same time an automation rule is executing a series of status changes. This can result in the issue unexpectedly landing in a status that does not have a direct transition path defined in the workflow.
Steps to Reproduce
- An agent selects a loop transition on an issue, which is intended to transition the issue to its current status.
- Concurrently, an automation rule is triggered, which aims to transition the issue through a sequence of statuses (e.g., "Status A" -> "Status B" -> original status).
- While the automation is processing these transitions, the agent attempts to manually use the loop transition.
- The issue ends up in an unexpected status due to the race condition, bypassing the workflow’s defined transition paths.
Note: Reproducing this issue is challenging due to its dependency on precise timing between manual and automated actions.
Expected Results
The issue should transition according to the workflow paths defined, without the possibility of bypassing direct transition paths, regardless of simultaneous automation rules or manual transitions.
Actual Results
The issue may transition to a status without a direct transition path defined in the workflow, indicating a race condition that permits an unintended status change.
Error Messages and Logs:
No specific error messages are displayed. The anomaly is evident in the issue history, with the issue moving from one status to another without a defined transition path for that step.
Workaround
Instead of using a global loop transition, configure a single loop transition on each status you have. These would be the steps:
When creating the loop transition, do not select "Any status" to "Itself":
Instead, select a status to "Itself", repeating the process to create a single loop transition to each status you want:
- is related to
-
JRACLOUD-95018 A worklog change silently prevents a status change for an issue
-
- Closed
-