[deploy] Remove Elasticsearch from Index Worker Names (#7594)

This commit is contained in:
Molly Struve 2020-04-29 12:12:29 -05:00 committed by GitHub
parent 4c779be2ed
commit a4cc606291
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
27 changed files with 44 additions and 47 deletions

View file

@ -4,7 +4,7 @@ module Searchable
end
def index_to_elasticsearch
Search::IndexToElasticsearchWorker.perform_async(self.class.name, id)
Search::IndexWorker.perform_async(self.class.name, id)
end
def index_to_elasticsearch_inline
@ -12,7 +12,7 @@ module Searchable
end
def remove_from_elasticsearch
Search::RemoveFromElasticsearchIndexWorker.perform_async(self.class::SEARCH_CLASS.to_s, search_id)
Search::RemoveFromIndexWorker.perform_async(self.class::SEARCH_CLASS.to_s, search_id)
end
def serialized_search_hash

View file

@ -59,7 +59,7 @@ module Users
readinglist_ids = user.reactions.readinglist.pluck(:id)
user.reactions.delete_all
readinglist_ids.each do |id|
Search::RemoveFromElasticsearchIndexWorker.perform_async("Search::Reaction", id)
Search::RemoveFromIndexWorker.perform_async("Search::Reaction", id)
end
end
end

View file

@ -29,7 +29,7 @@ module Users
readinglist_ids = article.reactions.readinglist.pluck(:id)
article.reactions.delete_all
readinglist_ids.each do |id|
Search::RemoveFromElasticsearchIndexWorker.perform_async("Search::Reaction", id)
Search::RemoveFromIndexWorker.perform_async("Search::Reaction", id)
end
end
end

View file

@ -1,5 +1,5 @@
module Search
class BulkIndexToElasticsearchWorker
class BulkIndexWorker
include Sidekiq::Worker
sidekiq_options queue: :high_priority, lock: :until_executing

View file

@ -1,5 +1,5 @@
module Search
class IndexToElasticsearchWorker
class IndexWorker
include Sidekiq::Worker
sidekiq_options queue: :high_priority, lock: :until_executing

View file

@ -1,5 +1,5 @@
module Search
class RemoveFromElasticsearchIndexWorker
class RemoveFromIndexWorker
include Sidekiq::Worker
sidekiq_options queue: :medium_priority, lock: :until_executing

View file

@ -2,7 +2,7 @@ module DataUpdateScripts
class IndexUsersToElasticsearch
def run
# User.select(:id).find_each do |user|
# Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
# Search::IndexWorker.set(queue: :low_priority).perform_async(
# "User", user.id
# )
# end

View file

@ -2,13 +2,13 @@ module DataUpdateScripts
class IndexFeedContentToElasticsearch
def run
# Article.select(:id).find_each do |article|
# Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
# Search::IndexWorker.set(queue: :low_priority).perform_async(
# "Article", article.id
# )
# end
# PodcastEpisode.select(:id).find_each do |pde|
# Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
# Search::IndexWorker.set(queue: :low_priority).perform_async(
# "PodcastEpisode", pde.id
# )
# end

View file

@ -2,7 +2,7 @@ module DataUpdateScripts
class IndexUsersToElasticsearch
def run
# User.select(:id).find_each do |user|
# Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
# Search::IndexWorker.set(queue: :low_priority).perform_async(
# "User", user.id
# )
# end

View file

@ -19,7 +19,7 @@ module DataUpdateScripts
def index_docs(ids, doc_type)
ids.each do |id|
Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
Search::IndexWorker.set(queue: :low_priority).perform_async(
doc_type, id
)
end

View file

@ -2,7 +2,7 @@ module DataUpdateScripts
class ReIndexUsersToElasticsearch
def run
User.select(:id).find_each do |user|
Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
Search::IndexWorker.set(queue: :low_priority).perform_async(
"User", user.id
)
end

View file

@ -15,7 +15,7 @@ module DataUpdateScripts
def index_docs(ids, doc_type)
ids.each do |id|
Search::IndexToElasticsearchWorker.set(queue: :low_priority).perform_async(
Search::IndexWorker.set(queue: :low_priority).perform_async(
doc_type, id
)
end

View file

@ -2,7 +2,7 @@ module DataUpdateScripts
class IndexReadingListReactions
def run
Reaction.readinglist.select(:id).in_batches do |batch|
Search::BulkIndexToElasticsearchWorker.set(queue: :default).perform_async(
Search::BulkIndexWorker.set(queue: :default).perform_async(
"Reaction", batch.pluck(:id)
)
end

View file

@ -32,7 +32,7 @@ RSpec.describe Article, type: :model do
describe "#after_commit" do
it "on update enqueues job to index article to elasticsearch" do
article.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, article.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, article.id]) do
article.save
end
end
@ -40,7 +40,7 @@ RSpec.describe Article, type: :model do
it "on destroy enqueues job to delete article from elasticsearch" do
article = create(:article)
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, article.search_id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, article.search_id]) do
article.destroy
end
end
@ -83,7 +83,7 @@ RSpec.describe Article, type: :model do
allow(article).to receive(:index_to_elasticsearch)
allow(article.user).to receive(:index_to_elasticsearch)
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: ["Reaction", reaction.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: ["Reaction", reaction.id]) do
article.update(body_markdown: "---\ntitle: NEW TITLE#{rand(1000)}\n")
end
end
@ -826,7 +826,7 @@ RSpec.describe Article, type: :model do
describe "#touch_by_reaction" do
it "reindexes elasticsearch doc" do
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, article.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, article.id]) do
article.touch_by_reaction
end
end

View file

@ -15,14 +15,14 @@ RSpec.describe ChatChannelMembership, type: :model do
describe "#after_commit" do
it "on update enqueues job to index chat_channel_membership to elasticsearch" do
chat_channel_membership.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, chat_channel_membership.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, chat_channel_membership.id]) do
chat_channel_membership.save
end
end
it "on destroy enqueues job to delete chat_channel_membership from elasticsearch" do
chat_channel_membership.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, chat_channel_membership.id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, chat_channel_membership.id]) do
chat_channel_membership.destroy
end
end

View file

@ -76,17 +76,16 @@ RSpec.describe ClassifiedListing, type: :model do
it "on update enqueues worker to index tag to elasticsearch" do
classified_listing.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, classified_listing.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, classified_listing.id]) do
classified_listing.save
end
end
it "on destroy enqueues job to delete classified_listing from elasticsearch" do
classified_listing.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, classified_listing.id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, classified_listing.id]) do
classified_listing.destroy
end
end
end
end

View file

@ -39,7 +39,7 @@ RSpec.describe Comment, type: :model do
describe "#after_commit" do
it "on update enqueues job to index comment to elasticsearch" do
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, comment.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, comment.id]) do
comment.save
end
end
@ -47,7 +47,7 @@ RSpec.describe Comment, type: :model do
it "on destroy enqueues job to delete comment from elasticsearch" do
comment = create(:comment)
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, comment.search_id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, comment.search_id]) do
comment.destroy
end
end

View file

@ -31,7 +31,7 @@ RSpec.describe Searchable do
describe "#remove_from_elasticsearch" do
it "enqueues job to delete model document from elasticsearch" do
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [SearchableModel::SEARCH_CLASS.to_s, searchable_model.search_id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [SearchableModel::SEARCH_CLASS.to_s, searchable_model.search_id]) do
searchable_model.remove_from_elasticsearch
end
end
@ -39,7 +39,7 @@ RSpec.describe Searchable do
describe "#index_to_elasticsearch" do
it "enqueues job to index document to elasticsearch" do
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: ["SearchableModel", searchable_model.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: ["SearchableModel", searchable_model.id]) do
searchable_model.index_to_elasticsearch
end
end

View file

@ -32,14 +32,14 @@ RSpec.describe PodcastEpisode, type: :model do
describe "#after_commit" do
it "on update enqueues job to index podcast_episode to elasticsearch" do
podcast_episode.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, podcast_episode.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, podcast_episode.id]) do
podcast_episode.save
end
end
it "on destroy enqueues job to delete podcast_episode from elasticsearch" do
podcast_episode.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, podcast_episode.search_id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, podcast_episode.search_id]) do
podcast_episode.destroy
end
end

View file

@ -72,14 +72,14 @@ RSpec.describe Reaction, type: :model do
context "when category is readingList and reactable is published" do
it "on update enqueues job to index reaction to elasticsearch" do
reaction.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, reaction.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, reaction.id]) do
reaction.update(category: "readinglist")
end
end
it "on create enqueues job to index reaction to elasticsearch" do
reaction.category = "readinglist"
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker) do
reaction.save
end
end
@ -87,7 +87,7 @@ RSpec.describe Reaction, type: :model do
it "on destroy enqueues job to delete reaction from elasticsearch" do
reaction.category = "readinglist"
reaction.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, reaction.id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, reaction.id]) do
reaction.destroy
end
end
@ -103,20 +103,20 @@ RSpec.describe Reaction, type: :model do
it "on update does not enqueue job to index reaction to elasticsearch" do
reaction.save
sidekiq_assert_no_enqueued_jobs(only: Search::IndexToElasticsearchWorker) do
sidekiq_assert_no_enqueued_jobs(only: Search::IndexWorker) do
reaction.update(category: "unicorn")
end
end
it "on create does not enqueue job to index reaction to elasticsearch" do
sidekiq_assert_no_enqueued_jobs(only: Search::IndexToElasticsearchWorker) do
sidekiq_assert_no_enqueued_jobs(only: Search::IndexWorker) do
reaction.save
end
end
it "on destroy does not enqueue job to delete reaction from elasticsearch" do
reaction.save
sidekiq_assert_no_enqueued_jobs(only: Search::RemoveFromElasticsearchIndexWorker) do
sidekiq_assert_no_enqueued_jobs(only: Search::RemoveFromIndexWorker) do
reaction.destroy
end
end

View file

@ -92,14 +92,14 @@ RSpec.describe Tag, type: :model do
describe "#after_commit" do
it "on update enqueues job to index tag to elasticsearch" do
tag.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, tag.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, tag.id]) do
tag.save
end
end
it "on destroy enqueues job to delete tag from elasticsearch" do
tag.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, tag.id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, tag.id]) do
tag.destroy
end
end

View file

@ -139,10 +139,8 @@ RSpec.describe User, type: :model do
expect(fourth_field).not_to be_valid
end
it { is_expected.to have_many(:organization_memberships).dependent(:destroy) }
it { is_expected.to have_one(:counters).class_name("UserCounter").dependent(:destroy) }
it { is_expected.to have_one(:pro_membership).dependent(:destroy) }
it { is_expected.to validate_uniqueness_of(:username).case_insensitive }
it { is_expected.not_to allow_value("#xyz").for(:bg_color_hex) }
it { is_expected.not_to allow_value("#xyz").for(:text_color_hex) }
it { is_expected.not_to allow_value("AcMe_1%").for(:username) }
@ -206,7 +204,7 @@ RSpec.describe User, type: :model do
describe "#after_commit" do
it "on update enqueues job to index user to elasticsearch" do
user.save
sidekiq_assert_enqueued_with(job: Search::IndexToElasticsearchWorker, args: [described_class.to_s, user.id]) do
sidekiq_assert_enqueued_with(job: Search::IndexWorker, args: [described_class.to_s, user.id]) do
user.save
end
end
@ -219,7 +217,7 @@ RSpec.describe User, type: :model do
it "on destroy enqueues job to delete user from elasticsearch" do
user.save
sidekiq_assert_enqueued_with(job: Search::RemoveFromElasticsearchIndexWorker, args: [described_class::SEARCH_CLASS.to_s, user.id]) do
sidekiq_assert_enqueued_with(job: Search::RemoveFromIndexWorker, args: [described_class::SEARCH_CLASS.to_s, user.id]) do
user.destroy
end
end

View file

@ -27,7 +27,7 @@ RSpec.describe Moderator::BanishUser, type: :service do
create(:comment, user: user, commentable: article)
sidekiq_perform_enqueued_jobs
sidekiq_perform_enqueued_jobs(except: Search::IndexToElasticsearchWorker) do
sidekiq_perform_enqueued_jobs(except: Search::IndexWorker) do
described_class.call(user: user, admin: admin)
end
expect(user.comments.count).to eq 0

View file

@ -57,7 +57,7 @@ RSpec.describe Users::DeleteArticles, type: :service do
sidekiq_perform_enqueued_jobs
comments = article.comments
comments.each { |comment| expect(comment.elasticsearch_doc).not_to be_nil }
sidekiq_perform_enqueued_jobs(only: Search::RemoveFromElasticsearchIndexWorker) do
sidekiq_perform_enqueued_jobs(only: Search::RemoveFromIndexWorker) do
described_class.call(user)
end

View file

@ -1,6 +1,6 @@
require "rails_helper"
RSpec.describe Search::BulkIndexToElasticsearchWorker, type: :worker, elasticsearch: true do
RSpec.describe Search::BulkIndexWorker, type: :worker, elasticsearch: true do
let(:worker) { subject }
let(:article) { create(:article) }

View file

@ -1,6 +1,6 @@
require "rails_helper"
RSpec.describe Search::IndexToElasticsearchWorker, type: :worker, elasticsearch: true do
RSpec.describe Search::IndexWorker, type: :worker, elasticsearch: true do
let(:worker) { subject }
include_examples "#enqueues_on_correct_queue", "high_priority", ["Tag", 1]

View file

@ -1,6 +1,6 @@
require "rails_helper"
RSpec.describe Search::RemoveFromElasticsearchIndexWorker, type: :worker do
RSpec.describe Search::RemoveFromIndexWorker, type: :worker do
let(:worker) { subject }
let(:search_class) { Search::Tag }