class Sidekiq::Retries::Server::Middleware
Public Instance Methods
call(worker, msg, queue) { || ... }
click to toggle source
# File lib/sidekiq/retries/server/middleware.rb, line 14 def call(worker, msg, queue) yield rescue Sidekiq::Shutdown # ignore, will be pushed back onto queue during hard_shutdown raise rescue Sidekiq::Retries::Retry => e # force a retry (for workers that have retries disabled) msg['retry'] = e.max_retries attempt_retry(worker, msg, queue, e.cause) raise e.cause rescue Sidekiq::Retries::Fail => e # seriously, don't retry this raise e.cause rescue Exception => e # ignore, will be pushed back onto queue during hard_shutdown raise Sidekiq::Shutdown if exception_caused_by_shutdown?(e) raise e unless msg['retry'] attempt_retry(worker, msg, queue, e) raise e end