ActiveJob and :exponentially_longer

We’re seeing issues using :exponentially_longer where failures in downstream systems are causing a thundering herd effect. A great many jobs fail, they all get enqueued to try again in a static interval and bring down the downstream system yet again. This repeats until the retry limit is exhausted.

We’ve gotten around this using a custom wait block but since exponential backoff with randomness is builtin to some adapters, like Sidekiq , I’m propsing to have it baked into to :exponentially_longer.

I submitted a PR here: https://github.com/rails/rails/pull/31872

Hello - Is anyone available to review this PR? I believe I’ve addressed all feedback. Thank you! https://github.com/rails/rails/pull/31872

Anthony

+1 I had a similar issue and would welcome it…

+1 to get this feature into Rails

It’s merged. Thanks everyone :raised_hands:

1 Like