-
-
Notifications
You must be signed in to change notification settings - Fork 276
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
First job never unlocks the lock / Endless waiting #352
Comments
The specs fail but when the
things seem to work fine. |
Of course! Nice find @mensfeld and many thanks for the detailed investigation. I will cut a new version right away. Just have a couple of tests to fix first! |
Anytime. It seems the |
Indeed! Can't believe I didn't see this until you pointed it out! No wonder people have been complaining |
This is interesting anyhow as it seems to be a problem with the LUA library (or ruby client) because when I do the same directly from |
Yeah, they still haven't managed to make this super smooth. If we use the ruby layer on the other hand performance suffers greatly. It is a fine balance between performance and reliability. I had other similar situations as well |
Describe the bug
I have a simple worker (as presented below) that I run in the following way within the example app context):
rails s
to see sidekiq and I see empty queues (flushall
just in case)rails c
and run following command:10.times { BlockedWorker.perform_async }
bundle exec sidekiq
Expected behavior
I expect jobs to be finished (one after another).
Current behavior
As presented below. The first worker job is finished while the rest is hanging. It seems the lock is never taken down and it blocks the other jobs.
And the log from Sidekiq looks as followed:
Worker class
Additional info
If after a while, let's say 1 minute I enqueue next 10 jobs with the same command, one job from the old pool will be finished but the it gets stuck again:
The text was updated successfully, but these errors were encountered: