[Deprecated] Continue to improve performance of Merge Request Changes API under load into S3 tier
With #225322 (closed), performance of the Merge Request Changes API endpoint was improved significantly by approximately 63% from 7.9s to around 2.9s (can fluctuate between 2.1s to 2.9s):
* Environment: 10k
* Environment Version: 13.9.0-pre `adef80adead`
* Option: 60s_200rps
* Date: 2021-02-18
* Run Time: 1h 18m 27.86s (Start: 04:35:52 UTC, End: 05:54:20 UTC)
* GPT Version: v2.6.0
❯ Overall Results Score: 98.07%
NAME | RPS | RPS RESULT | TTFB AVG | TTFB P90 | REQ STATUS | RESULT
---------------------------------------------------------|-------|----------------------|-----------|----------------------|----------------|-------
api_v4_projects_merge_requests_merge_request_changes | 200/s | 131.14/s (>16.00/s) | 1385.11ms | 2078.09ms (<12000ms) | 99.97% (>99%) | Passed
While this is still in the severity2 performance targets tier that piece of work was significant and for further improvements more separate pieces of work need to be explored so a new issue is being opened to track this.
Of note compared to the previous issue the endpoint is showing a heavier strain on the GitLab Rails nodes (CPU specifically)
Task is to continue this great work and improve performance further into the severity3 tier (<2000ms).
Deprecated
The changes API endpoint has been deprecated and will not be worked on. It'll be removed in API v5. A new diffs API endpoint has been introduced which supports pagination to replace it.