diff --git a/changelogs/unreleased/fj-11777-lower-search-count-limits.yml b/changelogs/unreleased/fj-11777-lower-search-count-limits.yml new file mode 100644 index 0000000000000000000000000000000000000000..c284bc49bfc495b0392e7be8f296776f138cfd9b --- /dev/null +++ b/changelogs/unreleased/fj-11777-lower-search-count-limits.yml @@ -0,0 +1,5 @@ +--- +title: Lower search counters +merge_request: 11777 +author: +type: performance diff --git a/lib/gitlab/search_results.rb b/lib/gitlab/search_results.rb index ce4c1611687fdb9154061ffb83b5328c748bf59b..93e172299b957985a442fb1a2c24c34efc57b6b1 100644 --- a/lib/gitlab/search_results.rb +++ b/lib/gitlab/search_results.rb @@ -2,7 +2,8 @@ module Gitlab class SearchResults - COUNT_LIMIT = 1001 + COUNT_LIMIT = 101 + COUNT_LIMIT_MESSAGE = "#{COUNT_LIMIT - 1}+" attr_reader :current_user, :query, :per_page @@ -60,7 +61,7 @@ module Gitlab def formatted_limited_count(count) if count >= COUNT_LIMIT - "#{COUNT_LIMIT - 1}+" + COUNT_LIMIT_MESSAGE else count.to_s end diff --git a/spec/lib/gitlab/project_search_results_spec.rb b/spec/lib/gitlab/project_search_results_spec.rb index 0dbfcf961249dd1454d9ac4dacedad1931d3c7b6..e0b9581c75ca6a7b79e9551e1ff34755ab161d1e 100644 --- a/spec/lib/gitlab/project_search_results_spec.rb +++ b/spec/lib/gitlab/project_search_results_spec.rb @@ -4,6 +4,8 @@ require 'spec_helper' describe Gitlab::ProjectSearchResults do + include SearchHelpers + let(:user) { create(:user) } let(:project) { create(:project) } let(:query) { 'hello world' } @@ -31,10 +33,10 @@ describe Gitlab::ProjectSearchResults do where(:scope, :count_method, :expected) do 'blobs' | :blobs_count | '1234' - 'notes' | :limited_notes_count | '1000+' + 'notes' | :limited_notes_count | max_limited_count 'wiki_blobs' | :wiki_blobs_count | '1234' 'commits' | :commits_count | '1234' - 'projects' | :limited_projects_count | '1000+' + 'projects' | :limited_projects_count | max_limited_count 'unknown' | nil | nil end diff --git a/spec/lib/gitlab/search_results_spec.rb b/spec/lib/gitlab/search_results_spec.rb index 5621c686b8a3cff6e47755ab2d88e8232def0462..26cba53502db01d8cb1896964ad4ef79ba140375 100644 --- a/spec/lib/gitlab/search_results_spec.rb +++ b/spec/lib/gitlab/search_results_spec.rb @@ -4,6 +4,7 @@ require 'spec_helper' describe Gitlab::SearchResults do include ProjectForksHelper + include SearchHelpers let(:user) { create(:user) } let!(:project) { create(:project, name: 'foo') } @@ -35,11 +36,11 @@ describe Gitlab::SearchResults do using RSpec::Parameterized::TableSyntax where(:scope, :count_method, :expected) do - 'projects' | :limited_projects_count | '1000+' - 'issues' | :limited_issues_count | '1000+' - 'merge_requests' | :limited_merge_requests_count | '1000+' - 'milestones' | :limited_milestones_count | '1000+' - 'users' | :limited_users_count | '1000+' + 'projects' | :limited_projects_count | max_limited_count + 'issues' | :limited_issues_count | max_limited_count + 'merge_requests' | :limited_merge_requests_count | max_limited_count + 'milestones' | :limited_milestones_count | max_limited_count + 'users' | :limited_users_count | max_limited_count 'unknown' | nil | nil end @@ -56,9 +57,9 @@ describe Gitlab::SearchResults do where(:count, :expected) do 23 | '23' - 1000 | '1000' - 1001 | '1000+' - 1234 | '1000+' + 100 | '100' + 101 | max_limited_count + 1234 | max_limited_count end with_them do diff --git a/spec/lib/gitlab/snippet_search_results_spec.rb b/spec/lib/gitlab/snippet_search_results_spec.rb index 89d290aaa81a472fea4265ab40a3e60de07777c2..d3353b76c1551f3a3c2ec1833c76f5d2b70d3a19 100644 --- a/spec/lib/gitlab/snippet_search_results_spec.rb +++ b/spec/lib/gitlab/snippet_search_results_spec.rb @@ -3,6 +3,8 @@ require 'spec_helper' describe Gitlab::SnippetSearchResults do + include SearchHelpers + let!(:snippet) { create(:snippet, content: 'foo', file_name: 'foo') } let(:results) { described_class.new(Snippet.all, 'foo') } @@ -25,7 +27,7 @@ describe Gitlab::SnippetSearchResults do where(:scope, :count_method, :expected) do 'snippet_titles' | :snippet_titles_count | '1234' 'snippet_blobs' | :snippet_blobs_count | '1234' - 'projects' | :limited_projects_count | '1000+' + 'projects' | :limited_projects_count | max_limited_count 'unknown' | nil | nil end diff --git a/spec/support/helpers/search_helpers.rb b/spec/support/helpers/search_helpers.rb index 2cf3f4b83c4f6a4412ce42594223807ffc358331..d1d25fbabcdcfe231c2a00410ae1c9736bb68af6 100644 --- a/spec/support/helpers/search_helpers.rb +++ b/spec/support/helpers/search_helpers.rb @@ -19,4 +19,8 @@ module SearchHelpers click_link scope end end + + def max_limited_count + Gitlab::SearchResults::COUNT_LIMIT_MESSAGE + end end