Commit 44fd05ec authored by Felipe Artur's avatar Felipe Artur

Improve issues search perfomance on GraphQL

Use issues search optimization when
searching issues with GraphQL
parent 2302ca66
...@@ -53,6 +53,7 @@ module Resolvers ...@@ -53,6 +53,7 @@ module Resolvers
# https://gitlab.com/gitlab-org/gitlab-foss/issues/54520 # https://gitlab.com/gitlab-org/gitlab-foss/issues/54520
args[:project_id] = project.id args[:project_id] = project.id
args[:iids] ||= [args[:iid]].compact args[:iids] ||= [args[:iid]].compact
args[:attempt_project_search_optimizations] = args[:search].present?
IssuesFinder.new(context[:current_user], args).execute IssuesFinder.new(context[:current_user], args).execute
end end
......
---
title: Improve issues search performance on GraphQL
merge_request: 20784
author:
type: performance
...@@ -68,10 +68,24 @@ describe Resolvers::IssuesResolver do ...@@ -68,10 +68,24 @@ describe Resolvers::IssuesResolver do
end end
end end
it 'searches issues' do context 'when searching issues' do
it 'returns correct issues' do
expect(resolve_issues(search: 'foo')).to contain_exactly(issue2) expect(resolve_issues(search: 'foo')).to contain_exactly(issue2)
end end
it 'uses project search optimization' do
expected_arguments = {
search: 'foo',
attempt_project_search_optimizations: true,
iids: [],
project_id: project.id
}
expect(IssuesFinder).to receive(:new).with(anything, expected_arguments).and_call_original
resolve_issues(search: 'foo')
end
end
describe 'sorting' do describe 'sorting' do
context 'when sorting by created' do context 'when sorting by created' do
it 'sorts issues ascending' do it 'sorts issues ascending' do
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment