-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Low
-
None
-
Affects Version/s: 9.4.12
-
Component/s: Project - Agile Boards
-
9.04
-
1
-
Severity 3 - Minor
Issue Summary
Setting estimates for a few issues intermittently within a short period of time could result in a situation where the estimated value from one issue will be assigned to another.
This is reproducible on Data Center: (yes)
Steps to Reproduce
The reproducibility of this issue relies on several factors including network delays and long-running server-side request processing. Therefore it is quite challenging to reproduce the issue on demand. In general reproduction steps look like this:
- On the backlog click on the issue and set its estimate at card layout.
- Repeat the same steps for other issues in a short period of time.
- Upon several iterations some of the issues in the backlog could randomly get an estimates value from another issue.
Expected Results
During the consequent update of several issues on the board, all updated issues will repeatedly receive set values.
Actual Results
Occasionally, an issue might get an unexpected estimate value assigned.
While researching the original issue in a reproducible environment we noticed several POST requests executed sequentially, and the return calls coming back at a later point, also sequentially.
Note the timing:
- POST request is made at 12:34:30 but it is processed 15 seconds later.
- In the meantime, the XHR request for details is made at 12:34:33 so it does not return the posted value.
- An issue refresh after 12:34:45 will show the correct values.
In our understanding the problem happened because of this async processing of the POST requests and returning data. In this data collection we see the incorrect order of the POST and GET requests, the 3 POST requests are issued sequentially and later 3 GET requests are made sequentially:
Workaround
In the environment with known network delay (or server-side request processing delay) issues, the workaround would be to ensure to wait at least for the duration of the data POST before making subsequent changes to the same field.