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