Reduce number of gitaly calls in Snippet REST list endpoints
What does this MR do?
At the moment, when we query the REST endpoint /api/:version/snippets/public
, in p95 200 Gitaly calls are made. Since we're retrieving 20 snippets per page, it's like 10 Gitaly calls per snippet, which is a lot.
Locally, I haven't seen that many, but I spotted something we can improve.
Instead of calling the Gitaly RPC ListFiles
twice, we can just call it once and store the result to reuse it later.
Does this MR meet the acceptance criteria?
Conformity
-
I have included changelog trailers, or none are needed. (Does this MR need a changelog?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides. -
This change is backwards compatible across updates, or this does not apply.
Edited by Francisco Javier López