Skip to content
代码片段 群组 项目
提交 0c10078b 编辑于 作者: rkumar555's avatar rkumar555
浏览文件

Remove the code related to FF simplify_logic_to_find_search_proxy_class

Since the FF simplify_logic_to_find_search_proxy_class has been rolled
out completely and is stable so we can remove the code related to this
feature_flag. ProjectWikiProxy will be replaced by WikiProxy.

Changelog: other
MR: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/124236
EE: true
上级 cc6563bf
No related branches found
No related tags found
无相关合并请求
显示
1 个添加176 个删除
...@@ -1120,7 +1120,6 @@ Layout/ArgumentAlignment: ...@@ -1120,7 +1120,6 @@ Layout/ArgumentAlignment:
- 'ee/spec/lib/ee/gitlab/scim/provisioning_service_spec.rb' - 'ee/spec/lib/ee/gitlab/scim/provisioning_service_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage/service_ping_report_spec.rb' - 'ee/spec/lib/ee/gitlab/usage/service_ping_report_spec.rb'
- 'ee/spec/lib/ee/gitlab/usage_data_spec.rb' - 'ee/spec/lib/ee/gitlab/usage_data_spec.rb'
- 'ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb'
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb' - 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/distinct_stage_loader_spec.rb' - 'ee/spec/lib/gitlab/analytics/cycle_analytics/distinct_stage_loader_spec.rb'
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/stage_time_summary_spec.rb' - 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/stage_time_summary_spec.rb'
......
...@@ -723,8 +723,6 @@ RSpec/MissingFeatureCategory: ...@@ -723,8 +723,6 @@ RSpec/MissingFeatureCategory:
- 'ee/spec/lib/elastic/latest/issue_config_spec.rb' - 'ee/spec/lib/elastic/latest/issue_config_spec.rb'
- 'ee/spec/lib/elastic/latest/merge_request_config_spec.rb' - 'ee/spec/lib/elastic/latest/merge_request_config_spec.rb'
- 'ee/spec/lib/elastic/latest/note_config_spec.rb' - 'ee/spec/lib/elastic/latest/note_config_spec.rb'
- 'ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb'
- 'ee/spec/lib/elastic/latest/project_wiki_instance_proxy_spec.rb'
- 'ee/spec/lib/elastic/latest/routing_spec.rb' - 'ee/spec/lib/elastic/latest/routing_spec.rb'
- 'ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb' - 'ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb'
- 'ee/spec/lib/elastic/latest/user_config_spec.rb' - 'ee/spec/lib/elastic/latest/user_config_spec.rb'
......
...@@ -108,8 +108,6 @@ Search/NamespacedClass: ...@@ -108,8 +108,6 @@ Search/NamespacedClass:
- 'ee/lib/elastic/latest/note_instance_proxy.rb' - 'ee/lib/elastic/latest/note_instance_proxy.rb'
- 'ee/lib/elastic/latest/project_class_proxy.rb' - 'ee/lib/elastic/latest/project_class_proxy.rb'
- 'ee/lib/elastic/latest/project_instance_proxy.rb' - 'ee/lib/elastic/latest/project_instance_proxy.rb'
- 'ee/lib/elastic/latest/project_wiki_class_proxy.rb'
- 'ee/lib/elastic/latest/project_wiki_instance_proxy.rb'
- 'ee/lib/elastic/latest/query_context.rb' - 'ee/lib/elastic/latest/query_context.rb'
- 'ee/lib/elastic/latest/repository_class_proxy.rb' - 'ee/lib/elastic/latest/repository_class_proxy.rb'
- 'ee/lib/elastic/latest/repository_instance_proxy.rb' - 'ee/lib/elastic/latest/repository_instance_proxy.rb'
...@@ -142,8 +140,6 @@ Search/NamespacedClass: ...@@ -142,8 +140,6 @@ Search/NamespacedClass:
- 'ee/lib/elastic/v12p1/note_instance_proxy.rb' - 'ee/lib/elastic/v12p1/note_instance_proxy.rb'
- 'ee/lib/elastic/v12p1/project_class_proxy.rb' - 'ee/lib/elastic/v12p1/project_class_proxy.rb'
- 'ee/lib/elastic/v12p1/project_instance_proxy.rb' - 'ee/lib/elastic/v12p1/project_instance_proxy.rb'
- 'ee/lib/elastic/v12p1/project_wiki_class_proxy.rb'
- 'ee/lib/elastic/v12p1/project_wiki_instance_proxy.rb'
- 'ee/lib/elastic/v12p1/repository_class_proxy.rb' - 'ee/lib/elastic/v12p1/repository_class_proxy.rb'
- 'ee/lib/elastic/v12p1/repository_instance_proxy.rb' - 'ee/lib/elastic/v12p1/repository_instance_proxy.rb'
- 'ee/lib/elastic/v12p1/routing.rb' - 'ee/lib/elastic/v12p1/routing.rb'
......
---
name: simplify_logic_to_find_search_proxy_class
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/121928
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/413420
milestone: '16.1'
type: development
group: group::global search
default_enabled: false
# frozen_string_literal: true
module Elastic
module Latest
class ProjectWikiClassProxy < ApplicationClassProxy
include GitClassProxy
def es_type
'wiki_blob'
end
def elastic_search_as_wiki_page(*args)
elastic_search_as_found_blob(*args).map! do |blob|
Gitlab::Search::FoundWikiPage.new(blob)
end
end
end
end
end
# frozen_string_literal: true
module Elastic
module Latest
class ProjectWikiInstanceProxy < ApplicationInstanceProxy
include GitInstanceProxy
delegate :project, to: :target
delegate :id, to: :project, prefix: true
# @return [Kaminari::PaginatableArray]
def elastic_search_as_wiki_page(query, page: 1, per: 20, options: {})
options = repository_specific_options(options)
self.class.elastic_search_as_wiki_page(query, page: page, per: per, options: options)
end
private
def repository_id
if ::Elastic::DataMigrationService.migration_has_finished?(:add_suffix_project_in_wiki_rid)
"wiki_project_#{project.id}"
else
"wiki_#{project.id}"
end
end
end
end
end
...@@ -34,9 +34,7 @@ def elastic_writing_targets ...@@ -34,9 +34,7 @@ def elastic_writing_targets
private private
def get_data_class(klass) def get_data_class(klass)
return (klass.try(:base_class) || klass) if Feature.enabled?(:simplify_logic_to_find_search_proxy_class) klass.try(:base_class) || klass
klass < ActiveRecord::Base ? klass.base_class : klass
end end
# Handles which method calls should be forwarded to all targets, # Handles which method calls should be forwarded to all targets,
......
# rubocop:disable Naming/FileName
# frozen_string_literal: true
module Elastic
module V12p1
ProjectWikiClassProxy = Elastic::Latest::ProjectWikiClassProxy
end
end
# rubocop:enable Naming/FileName
# rubocop:disable Naming/FileName
# frozen_string_literal: true
module Elastic
module V12p1
ProjectWikiInstanceProxy = Elastic::Latest::ProjectWikiInstanceProxy
end
end
# rubocop:enable Naming/FileName
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe Elastic::Latest::ProjectWikiClassProxy, :elastic, feature_category: :global_search do
let(:project) { create(:project, :wiki_repo) }
subject { described_class.new(project.wiki.class, use_separate_indices: ProjectWiki.use_separate_indices?) }
describe '#elastic_search_as_wiki_page' do
let!(:page) { create(:wiki_page, wiki: project.wiki) }
before do
stub_ee_application_setting(elasticsearch_search: true, elasticsearch_indexing: true)
Gitlab::Elastic::Indexer.new(project, wiki: true).run
ensure_elasticsearch_index!
end
it 'returns FoundWikiPage', :sidekiq_inline do
results = subject.elastic_search_as_wiki_page('*')
expect(results.size).to eq(1)
expect(results).to all(be_a(Gitlab::Search::FoundWikiPage))
result = results.first
expect(result.path).to eq(page.path)
expect(result.startline).to eq(1)
expect(result.data).to include(page.content)
expect(result.project).to eq(project)
end
end
it 'names elasticsearch queries' do
subject.elastic_search_as_wiki_page('*')
assert_named_queries('doc:is_a:wiki_blob', 'blob:match:search_terms')
end
end
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe Elastic::Latest::ProjectWikiInstanceProxy, feature_category: :global_search do
let_it_be(:project) { create(:project, :wiki_repo) }
subject { described_class.new(project.wiki, use_separate_indices: true) }
describe '#elastic_search_as_wiki_page' do
let(:params) do
{
page: 2,
per: 30,
options: { foo: :bar }
}
end
it 'provides repository_id if not provided' do
expected_params = params.deep_dup
expected_params[:options][:repository_id] = "wiki_#{project.id}"
expect(subject.class).to receive(:elastic_search_as_wiki_page).with('foo', expected_params)
subject.elastic_search_as_wiki_page('foo', **params)
end
it 'uses provided repository_id' do
params[:options][:repository_id] = "wiki_63"
expect(subject.class).to receive(:elastic_search_as_wiki_page).with('foo', params)
subject.elastic_search_as_wiki_page('foo', **params)
end
end
end
...@@ -25,18 +25,6 @@ ...@@ -25,18 +25,6 @@
expect(wiki_result).to be_a(Elastic::V12p1::WikiClassProxy) expect(wiki_result).to be_a(Elastic::V12p1::WikiClassProxy)
expect(wiki_result.target).to eq(ProjectWiki) expect(wiki_result.target).to eq(ProjectWiki)
end end
context 'when feature_flag simplify_logic_to_find_search_proxy_class is disabled' do
before do
stub_feature_flags(simplify_logic_to_find_search_proxy_class: false)
end
it 'returns ProjectWikiClassProxy for wiki' do
wiki_proxy = described_class.new(ProjectWiki)
wiki_result = wiki_proxy.version('V12p1')
expect(wiki_result).to be_a(Elastic::V12p1::ProjectWikiClassProxy)
end
end
end end
end end
......
...@@ -1213,8 +1213,6 @@ ...@@ -1213,8 +1213,6 @@
- './ee/spec/lib/elastic/latest/merge_request_config_spec.rb' - './ee/spec/lib/elastic/latest/merge_request_config_spec.rb'
- './ee/spec/lib/elastic/latest/note_config_spec.rb' - './ee/spec/lib/elastic/latest/note_config_spec.rb'
- './ee/spec/lib/elastic/latest/project_instance_proxy_spec.rb' - './ee/spec/lib/elastic/latest/project_instance_proxy_spec.rb'
- './ee/spec/lib/elastic/latest/project_wiki_class_proxy_spec.rb'
- './ee/spec/lib/elastic/latest/project_wiki_instance_proxy_spec.rb'
- './ee/spec/lib/elastic/latest/routing_spec.rb' - './ee/spec/lib/elastic/latest/routing_spec.rb'
- './ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb' - './ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb'
- './ee/spec/lib/elastic/migration_spec.rb' - './ee/spec/lib/elastic/migration_spec.rb'
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册