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