Defect #20995
Automatic done ratio calculation in issue tree is wrong in some cases
Status: | Closed | Start date: | ||
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | % Done: | 0% | ||
Category: | Issues | |||
Target version: | 3.2.0 | |||
Resolution: | Fixed | Affected version: |
Description
Currently the done ratio of parent issues in an issue tree is calculated based on the average of done ratios of the leaves bellow that issue source:/tags/3.1.1/app/models/issue.rb#L1491. This however can lead to inconsistencies in the automatically calculated done ratios.
For example: issue C with a done ratio of 50% and an open status, which is a subtask of issue B with a done ratio of 70% automatically set by its (open) status, which itself is a subtask of issue A, with a status that doesn't automatically set the done ratio. In that case, A will have an automatically calculated done ratio of 50% because it will be calculated based on the leaf's done ratios, i.e. from C, although its only direct child has a done ratio of 70%.
Is there any rationale to keeping the calculation of the done ratio based on the leaves? I would like to change it to be calculated based on the done ratios of the direct children. If this is an acceptable change I can work on a patch.
Related issues
Associated revisions
Calculate done_ratio based on children instead of leaves (#20995).
Patch by Jens Krämer.
History
#1
Updated by Felix Schäfer over 5 years ago
As a side-note: I'm aware of #6609, this is not directly related though.
#2
Updated by Jens Krämer over 5 years ago
here's a patch switching done ratio calculation from the leaves to direct children, and a test illustrating the problem.
#3
Updated by Toshi MARUYAMA over 5 years ago
- Target version set to 3.2.0
#4
Updated by Jean-Philippe Lang over 5 years ago
- Status changed from New to Closed
- Assignee set to Jean-Philippe Lang
- Resolution set to Fixed
#5
Updated by Toshi MARUYAMA over 4 years ago
- Related to Defect #23511: Progress of parent task should be calculated using total estimated hours of children added