You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When retrying jobs via sidekiq_retry_in for example here. We compute a backoff value and then let sidekiq handle the retry. This generally works ok and keeps the code clean. But this is problematic for very large backoff values, which we often have, because the in-built jitter causes them to get very, very delayed.
Requirements & acceptance criteria
Move all Sidekiq job sidekiq_retry_in + sidekiq_retries_exhausted to actually normally rescue exceptions using rescue inside perform, and reenque the job via the backoff value, for example, here.
This will remove the in-built jitter and will ensure a bit more predictable delay in job enqueuing.
It will be interesting, to write a helper / concern or something that allow one to write the retry-reenqueue code easily without having to repeat too much in all jobs. Not sure if possible, worth exploring.
Additional Notes
This problem usually manifests as customer feedback where submission states are updated way too slowly, even though they have changed in App Store / Play Store.
The text was updated successfully, but these errors were encountered:
Context
This is a pure technical debt requirement.
When retrying jobs via
sidekiq_retry_in
for example here. We compute a backoff value and then let sidekiq handle the retry. This generally works ok and keeps the code clean. But this is problematic for very large backoff values, which we often have, because the in-built jitter causes them to get very, very delayed.Requirements & acceptance criteria
Move all Sidekiq job
sidekiq_retry_in
+sidekiq_retries_exhausted
to actually normally rescue exceptions usingrescue
inside perform, and reenque the job via the backoff value, for example, here.This will remove the in-built jitter and will ensure a bit more predictable delay in job enqueuing.
It will be interesting, to write a helper / concern or something that allow one to write the retry-reenqueue code easily without having to repeat too much in all jobs. Not sure if possible, worth exploring.
Additional Notes
This problem usually manifests as customer feedback where submission states are updated way too slowly, even though they have changed in App Store / Play Store.
The text was updated successfully, but these errors were encountered: