2016-11-16 00:56:29 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2016-11-08 10:08:32 +09:00
|
|
|
class RegenerationWorker
|
|
|
|
include Sidekiq::Worker
|
2023-07-13 00:06:00 +09:00
|
|
|
include DatabaseHelper
|
2016-11-08 10:08:32 +09:00
|
|
|
|
2020-04-01 04:59:03 +09:00
|
|
|
sidekiq_options lock: :until_executed
|
2017-04-04 07:53:20 +09:00
|
|
|
|
2017-04-04 09:00:10 +09:00
|
|
|
def perform(account_id, _ = :home)
|
2023-07-13 00:06:00 +09:00
|
|
|
with_primary do
|
2023-07-10 10:06:09 +09:00
|
|
|
@account = Account.find(account_id)
|
|
|
|
end
|
|
|
|
|
2023-07-13 00:06:00 +09:00
|
|
|
with_read_replica do
|
2023-07-10 10:06:09 +09:00
|
|
|
PrecomputeFeedService.new.call(@account)
|
|
|
|
end
|
2017-05-19 23:55:09 +09:00
|
|
|
rescue ActiveRecord::RecordNotFound
|
|
|
|
true
|
2016-11-08 10:08:32 +09:00
|
|
|
end
|
|
|
|
end
|