diff options
author | Nick Thomas <nick@gitlab.com> | 2019-06-27 14:55:24 +0000 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2019-06-27 14:55:24 +0000 |
commit | aa814403a9502358fbe4d6aec71d6e4f68d2acb9 (patch) | |
tree | 43c9bd1701c2a062031c0e7ca460c2466e2902ed | |
parent | 63188fa16fe921da93c605ed376a8ef00eb7edef (diff) | |
parent | 80e6e75c9f0f29979afcff90a16a2dd9a75ceb85 (diff) | |
download | gitlab-ce-aa814403a9502358fbe4d6aec71d6e4f68d2acb9.tar.gz |
Merge branch 'sh-avoid-loading-pipeline-status' into 'master'
Avoid loading pipeline status in search results
See merge request gitlab-org/gitlab-ce!30111
-rw-r--r-- | app/views/shared/projects/_list.html.haml | 2 | ||||
-rw-r--r-- | changelogs/unreleased/sh-avoid-loading-pipeline-status.yml | 5 | ||||
-rw-r--r-- | spec/controllers/search_controller_spec.rb | 13 |
3 files changed, 19 insertions, 1 deletions
diff --git a/app/views/shared/projects/_list.html.haml b/app/views/shared/projects/_list.html.haml index 13847cd9be1..576ec3e1782 100644 --- a/app/views/shared/projects/_list.html.haml +++ b/app/views/shared/projects/_list.html.haml @@ -28,7 +28,7 @@ .js-projects-list-holder - if any_projects?(projects) - - load_pipeline_status(projects) + - load_pipeline_status(projects) if pipeline_status %ul.projects-list{ class: css_classes } - projects.each_with_index do |project, i| - css_class = (i >= projects_limit) || project.pending_delete? ? 'hide' : nil diff --git a/changelogs/unreleased/sh-avoid-loading-pipeline-status.yml b/changelogs/unreleased/sh-avoid-loading-pipeline-status.yml new file mode 100644 index 00000000000..2dead948786 --- /dev/null +++ b/changelogs/unreleased/sh-avoid-loading-pipeline-status.yml @@ -0,0 +1,5 @@ +--- +title: Avoid loading pipeline status in search results +merge_request: 30111 +author: +type: performance diff --git a/spec/controllers/search_controller_spec.rb b/spec/controllers/search_controller_spec.rb index fd36ff812ff..5a5c0a1f6ac 100644 --- a/spec/controllers/search_controller_spec.rb +++ b/spec/controllers/search_controller_spec.rb @@ -39,6 +39,19 @@ describe SearchController do end end + context 'global search' do + render_views + + it 'omits pipeline status from load' do + project = create(:project, :public) + expect(Gitlab::Cache::Ci::ProjectPipelineStatus).not_to receive(:load_in_batch_for_projects) + + get :show, params: { scope: 'projects', search: project.name } + + expect(assigns[:search_objects].first).to eq project + end + end + it 'finds issue comments' do project = create(:project, :public) note = create(:note_on_issue, project: project) |