1

I would like to limit the number of retries when a job fails using ActiveJob with Sidekiq as adapter.

Using Sidekiq, I can do that:

class LessRetryableWorker
  include Sidekiq::Worker
  sidekiq_options :retry => 5

  def perform(...)
  end
end

Sidekiq configuration doesn't provide a global retry config. Each Worker is responsible of setting the retry option. So I guess I have to implement it in ActiveJob side to do it properly.

rubycademy.com
  • 509
  • 5
  • 16
  • We built a gem to do just this! It's still in alpha, so please report any issues you find. https://github.com/SimplyBuilt/activejob-retriable – mikeycgto Aug 20 '15 at 16:51

1 Answers1

5

Sidekiq provide a server-level config to handle this case. From Sidekiq ruby-doc:

Sidekiq.configure_server do |config|
  config.server_middleware do |chain|
    chain.add Middleware::Server::RetryJobs, :max_retries => 7
  end
end
rubycademy.com
  • 509
  • 5
  • 16