From b7f2a64509b930f1bee57e271440ca4ac74fa579 Mon Sep 17 00:00:00 2001 From: Chantal Rollison <crollison@gitlab.com> Date: Tue, 10 Jul 2018 07:35:50 -0700 Subject: [PATCH] Add count limit to snippet search --- .../cr-add-count-limit-to-snippet-search.yml | 5 ++++ lib/gitlab/snippet_search_results.rb | 27 +++++++++++-------- 2 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 changelogs/unreleased/cr-add-count-limit-to-snippet-search.yml diff --git a/changelogs/unreleased/cr-add-count-limit-to-snippet-search.yml b/changelogs/unreleased/cr-add-count-limit-to-snippet-search.yml new file mode 100644 index 00000000000..8ae43659d8d --- /dev/null +++ b/changelogs/unreleased/cr-add-count-limit-to-snippet-search.yml @@ -0,0 +1,5 @@ +--- +title: Adds a count limit to the number of snippet search results. +merge_request: 20531 +author: +type: fixed diff --git a/lib/gitlab/snippet_search_results.rb b/lib/gitlab/snippet_search_results.rb index 4f86b3e8f73..45562237157 100644 --- a/lib/gitlab/snippet_search_results.rb +++ b/lib/gitlab/snippet_search_results.rb @@ -9,23 +9,28 @@ module Gitlab @query = query end - def objects(scope, page = nil) - case scope - when 'snippet_titles' - snippet_titles.page(page).per(per_page) - when 'snippet_blobs' - snippet_blobs.page(page).per(per_page) - else - super(scope, nil, false) - end + def objects(scope, page = nil, without_count = true) + collection = case scope + when 'snippet_titles' + snippet_titles.page(page).per(per_page) + when 'snippet_blobs' + snippet_blobs.page(page).per(per_page) + else + super(scope, nil, false) + end + without_count ? collection.without_count : collection end def snippet_titles_count - @snippet_titles_count ||= snippet_titles.count + @snippet_titles_count ||= snippet_titles.limit(count_limit).count end def snippet_blobs_count - @snippet_blobs_count ||= snippet_blobs.count + @snippet_blobs_count ||= snippet_blobs.limit(count_limit).count + end + + def count_limit + 1001 end private -- GitLab