Skip to content
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

Reaper can't be registered again if sidekiq gets killed by SIGKILL #490

Closed
yaoyi opened this issue Apr 5, 2020 · 4 comments · Fixed by #508
Closed

Reaper can't be registered again if sidekiq gets killed by SIGKILL #490

yaoyi opened this issue Apr 5, 2020 · 4 comments · Fixed by #508
Assignees

Comments

@yaoyi
Copy link

yaoyi commented Apr 5, 2020

if sidekiq gets killed by SIGKILL, reaper can't clear its flag in redis, so next time, if we start sidekiq again, reaper can't get registered, therefore, the timer task will not start either, the reaper task will never run in this case unless you clear the flag manually

@mhenrixon
Copy link
Owner

Need a reaper reaper :) I’ll tackle this in the next day or two.

@yaoyi
Copy link
Author

yaoyi commented Apr 5, 2020

hi @mhenrixon , i think maybe you don't need to provide a reaper reaper, which make things more sophisticated, you just provide an api, and we can call it from other cron job, for now, my workaround is to run the SidekiqUniqueJobs::Orphans::Reaper.new(redis_conn).execute_lua_reaper with sidekiq-cron for every 30 minutes

@mhenrixon
Copy link
Owner

Great suggestion! Thanks for all the amazing bug reports. I will prioritize these tickets so that v7 can finally be released at some point!

@mhenrixon
Copy link
Owner

@yaoyi I decided to make it a little more sophisticated. Since version 7.0.0.beta19 the reaper will now refresh a timestamp instead. Then when you boot up again after a sig kill it is less likely that you will run into problems with registration.

It still isn't perfect but baby steps in the right direction :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants