• Alex Kalderimis's avatar
    Eliminate N+1 performance issues in MergeRequest.pipelines · b80cecde
    Alex Kalderimis authored
    This requires the use of the CachingArrayResolver due to the way
    MergeRequest.pipelines is implemented.
    
    This is OK to use since the cardinality of `MergeRequest.pipelines` is
    low (collections with more than 20 elements are rare). We need to set
    an appropriate max page size though, so we set that here to 500
    pipelines for any one MR, which is very conservative, since in
    gitlab-org/gitlab> the 99th percentile is 39 pipelines per MR.
    b80cecde
merge_request_pipelines_resolver_spec.rb 1.16 KB