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
Strange behavior of Sidekiq Pro's Reliability feature #2120
Comments
Wow, good catch! You're right, this is a bug. |
Wow. Thanks for reporting and thanks for fixing, @mperham! Sent from my mobile device
|
Thank you for the great report, 1.9.2 has been released. |
👍 |
@mperham I appreciate this change! Since upgrading from |
Can you give more versions: Ruby, sidekiq, sidekiq pro? Ruby 1.9 support is pretty frozen at this point, any possibility of upgrading Ruby and sidekiq?
|
Sorry, I was unclear: it was an upgrade from Ruby version:
Redis version:
|
show us your queue configuration.
|
Configurations…
|
STDOUT content during startup:
STDOUT from Sidekiq Pro 1.9.1, note the job timings:
STDOUT from Sidekiq Pro 1.9.2, these jobs are slower:
|
If it further helps, here’s a New Relic comparison of the same, unchanged worker class behaviors… Sidekiq Pro 1.9.1, captured on Jan 16, 2015: New Relic thread tracing allocates 57 percent of the execution time to Sidekiq Pro 1.9.2, captured on Feb 12, 2015: FYI: this isn’t an urgent issue… enjoy the wonderful weather! 😎 |
There's no change that should increase worker runtime. The only fix to 1.9.2 changes Sidekiq Pro's startup, not runtime. I suspect you've got another change which caused the problem. Did you upgrade other gems at the same time? |
Yes, I did upgrade other gems. I'll check them out for the regression source. Thanks for confirming! |
Hello, @mperham. Thank you for the gem!
I face strange behavior of Sidekiq Pro's Reliability feature [1].
I have TestWorker [2]. Also I use 'weighted random' fetch algorithm [3].
I run sidekiq the same way as in [3] and push the worker (TestWorker.perform_async).
I kill the sidekiq process (kill -9 pid).
I run sidekiq again.
And now 2 TestWorkers run instead of 1.
If I change the weight
sidekiq ... -q default,2 ...
tosidekiq ... -q default,5 ...
, then 5 TestWorkers run and so on.What do you think about it?
[1] https://github.com/mperham/sidekiq/wiki/Reliability
[2] https://gist.github.com/mkaschenko/24da18c795962da3c970
[3] https://github.com/mperham/sidekiq/wiki/Reliability#weighted-random-algorithm
The text was updated successfully, but these errors were encountered: