Commit b33c539e authored by Valery Sizov's avatar Valery Sizov

Dicouple ES index update from RepositoryUpdateMirrorWorker

parent 6fef1152
...@@ -3,6 +3,7 @@ Please view this file on the master branch, on stable branches it's out of date. ...@@ -3,6 +3,7 @@ Please view this file on the master branch, on stable branches it's out of date.
v 8.11.0 (unreleased) v 8.11.0 (unreleased)
v 8.10.2 (unreleased) v 8.10.2 (unreleased)
- Dicouple an ES index update from RepositoryUpdateMirrorWorker
v 8.10.1 v 8.10.1
- No EE-specific changes - No EE-specific changes
......
...@@ -240,8 +240,7 @@ class Project < ActiveRecord::Base ...@@ -240,8 +240,7 @@ class Project < ActiveRecord::Base
end end
if current_application_settings.elasticsearch_indexing? if current_application_settings.elasticsearch_indexing?
project.repository.index_blobs ElasticCommitIndexerWorker.perform_async(project.id)
project.repository.index_commits
end end
end end
......
...@@ -3,13 +3,16 @@ class ElasticCommitIndexerWorker ...@@ -3,13 +3,16 @@ class ElasticCommitIndexerWorker
sidekiq_options queue: :elasticsearch sidekiq_options queue: :elasticsearch
def perform(project_id, oldrev, newrev) def perform(project_id, oldrev = nil, newrev = nil)
project = Project.find(project_id) project = Project.find(project_id)
repository = project.repository
return true unless repository.exists? && !repository.empty?
indexer = Gitlab::Elastic::Indexer.new indexer = Gitlab::Elastic::Indexer.new
indexer.run( indexer.run(
project_id, project_id,
project.repository.path_to_repo, repository.path_to_repo,
oldrev, oldrev,
newrev newrev
) )
......
...@@ -10,5 +10,13 @@ describe ElasticCommitIndexerWorker do ...@@ -10,5 +10,13 @@ describe ElasticCommitIndexerWorker do
expect_any_instance_of(Gitlab::Elastic::Indexer).to receive(:run) expect_any_instance_of(Gitlab::Elastic::Indexer).to receive(:run)
subject.perform(project.id, '0000', '0000') subject.perform(project.id, '0000', '0000')
end end
it 'does not run indexer when project is empty' do
empty_project = create :empty_project
expect_any_instance_of(Gitlab::Elastic::Indexer).not_to receive(:run)
subject.perform(empty_project.id, '0000', '0000')
end
end end
end end
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