Loading
feat(server): limit GetItemCounts to one path
What does this MR do and why?
GetItemCounts now takes one path. The UI shows item counts only for one top-level group, and the count is expensive: in production, one large group reads 26 GiB, and 100 groups took 238 s. One path also makes the contract clear: the response is the counts of that path.
The request keeps field number 1, so a client on v0.133.0 that sends one path in traversal_paths still works.
Related Issues
Relates to #1281 (closed) and gitlab-org/gitlab!258502 (merged)
Testing
Unit tests for the path checks, and integration tests for a group, a project, and a Reporter.
Performance Analysis
The count query does not change. One call now counts one path.
- This merge request does not introduce any performance regression. If a performance regression is expected, explain why.
Edited by Jean-Gabriel Doyon