diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-09 15:08:17 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-07-09 15:08:17 +0300 |
commit | a373ecffca1512404cb4f237399e3bf275d87f69 (patch) | |
tree | 0c131c86a4f88b427c5d644cd14c4596daa87d36 /app/finders | |
parent | 1613500bf7400f5692a55fd65235a4a10fc40a7d (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/finders')
-rw-r--r-- | app/finders/concerns/merged_at_filter.rb | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/app/finders/concerns/merged_at_filter.rb b/app/finders/concerns/merged_at_filter.rb index e44354f36d1..581bcca3c25 100644 --- a/app/finders/concerns/merged_at_filter.rb +++ b/app/finders/concerns/merged_at_filter.rb @@ -10,7 +10,7 @@ module MergedAtFilter mr_metrics_scope = mr_metrics_scope.merged_after(merged_after) if merged_after.present? mr_metrics_scope = mr_metrics_scope.merged_before(merged_before) if merged_before.present? - join_metrics(items, mr_metrics_scope) + items.join_metrics.merge(mr_metrics_scope) end def merged_after @@ -20,22 +20,4 @@ module MergedAtFilter def merged_before params[:merged_before] end - - # rubocop: disable CodeReuse/ActiveRecord - # - # This join optimizes merged_at queries when the finder is invoked for a project by moving - # the target_project_id condition from merge_requests table to merge_request_metrics table. - def join_metrics(items, mr_metrics_scope) - scope = if project_id = items.where_values_hash["target_project_id"] - # removing the original merge_requests.target_project_id condition - items = items.unscope(where: :target_project_id) - # adding the target_project_id condition to merge_request_metrics - items.join_metrics(project_id) - else - items.join_metrics - end - - scope.merge(mr_metrics_scope) - end - # rubocop: enable CodeReuse/ActiveRecord end |