Class: SolidQueuePlus::RetryMiddleware
- Inherits:
-
Object
- Object
- SolidQueuePlus::RetryMiddleware
- Defined in:
- lib/solid_queue_plus/retry_middleware.rb
Constant Summary collapse
- MAX_RETRIES =
5
Instance Method Summary collapse
Instance Method Details
#call(job) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/solid_queue_plus/retry_middleware.rb', line 5 def call(job) yield rescue => e attempts = job.["retries"].to_i if attempts < MAX_RETRIES delay = 2**attempts job.["retries"] = attempts + 1 job.enqueue(wait: delay.seconds) else Notifier.notify_failure(job, e) raise e end end |