summaryrefslogtreecommitdiffstats
path: root/app/workers/regeneration_worker.rb
blob: 4228f897d319084e3b11c3041e3879c8ac3de4ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# frozen_string_literal: true

class RegenerationWorker
  include Sidekiq::Worker
  include DatabaseHelper

  sidekiq_options lock: :until_executed

  def perform(account_id, _ = :home)
    with_primary do
      @account = Account.find(account_id)
    end

    with_read_replica do
      PrecomputeFeedService.new.call(@account)
    end
  rescue ActiveRecord::RecordNotFound
    true
  end
end