Some Epics are displaying twice in roadmap as child epics and top-level epics
Summary
A customer reported that the Epics roadmap for a group shows some epics twice: both as children of their parent epics (correct) and as top-level epics (incorrect).
The problematic sub-epics (3rd level) were children of another (2nd level) sub-epic which did not have assigned start / end dates. Assigning start/end dates to the middle-level sub-epic caused its children to be displayed correctly.
Ticket:(Internal Link)
Steps to reproduce
- Create a parent epic A
- Add 2 child epic (a,b) to the parent epic (A), but leave child b without a start and end date.
- Add 2 child epics (i, ii) to the to the child epic (a)
- Add the same child epics (i, ii) to child epic (b)
- Check the roadmap
Alternative steps to reproduce
- Create three levels of nested epics, A -> B -> C, where (A) is top level, (C) is bottom,
- Ensure A and C have start and due date assigned,
- Ensure B has no inherited dates but both set to
Fixed: Nonein the UI, - View the Roadmap and see (B) at the top level.
Example Project
What is the current bug behavior?
Some child epics twice are displayed twice in the roadmap; both as children of their parent epics and as top-level epics.
What is the expected correct behavior?
The child epics should only be displayed once and not as top-level epics
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
(For installations with omnibus-gitlab package run and paste the output of: `sudo gitlab-rake gitlab:env:info`) (For installations from source run and paste the output of: `sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)
Results of GitLab application Check
Expand for output related to the GitLab application check
(For installations with omnibus-gitlab package run and paste the output of:
sudo gitlab-rake gitlab:check SANITIZE=true)(For installations from source run and paste the output of:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true)(we will only investigate if the tests are passing)
Possible fixes
The GraphQL query appears to return mid-level epics as top-level when the criteria in steps to reproduce are met. This shouldn't happen.