-
-
Notifications
You must be signed in to change notification settings - Fork 279
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
while_executing
with on_conflict: :reschedule
Reschedule job after job execution
#800
Comments
Seeing the same on my end, had to downgrade to 8.0.2. The scheduled queue never gets clean |
We saw the same problem, also downgraded to 8.0.2. Not entirely sure if that's because we misunderstood that setting until now and the changes started making it work as expected, or if this is a bug. |
I have the same problem on v7.1.30 and it looks like the code in question was back-ported to V7. |
Reschedule isn't valid for while executing. If you want to retry it just use raise and let sidekiq handle when. |
Sorry, my explanation was insufficient. |
Ok, I realesed v8.0.5 and v7.1.31 that should address this issue. Let me know if that's not the case. |
Thank you! Seems to address the issue for us, appreciate the follow-up! |
Describe the bug
I am not certain if this is a bug.
It started happening when I updated sidekiq unique-jobs from v8.0.2 to v8.0.3.
Environment in which it occurs:
sidekiq-unique-jobs/lib/sidekiq_unique_jobs/lock/while_executing.rb
Lines 41 to 54 in f381562
Events:
lock: :while_executing
and whose conflict strategy ison_conflict: :reschedule
.executed
is empty and enters the condition ofunless executed
and the Job is rescheduled.The above events loop infinitely.
Expected behavior
In v8.0.2, the job_id is placed in
executed
and is not rescheduled.v8.0.2
Current behavior
In v8.0.3, the job is rescheduled because the
executed
is empty.v8.0.3
Additional context
Related issues:#770
Related PR:#771
The text was updated successfully, but these errors were encountered: