-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Make reliable fetch work well with dynamic hostnames #1573
Comments
Can someone provide a sample (cleansed of private values) Heroku environment? Does Heroku provide any environment values that we can use in lieu of a hostname? |
here's ours, scrubbed. Note we use a custom buildpack which might provide some avenues for setting a value like this
there may be something that could be added a The Heroku Platform API is another source of information but at first glance those values don't look helpful. The only thing that is constant is the name of the process - not ideal, but I guess instead of indexing with
|
How does a process get its own name? |
I'm not sure. I wonder if @hone would be able to weigh in |
Ok, the new logic for the private queue name is: if ENV['DYNO']
# Running on Heroku, hostnames are not predictable or stable.
"queue:#{q}_#{options[:index]}"
else
"queue:#{q}_#{Socket.gethostname}_#{options[:index]}"
end Sidekiq Pro 1.5.0 has been released with this fix. |
So on Heroku, the index must be globally unique not just on each host machine. |
If you use the |
@mperham thank you! deploying this now! |
working great! this is a beautiful sight: |
Reliable fetch currently assumes the process is running on a platform with a static hostname. Ideally it would be more flexible to accommodate Heroku and other platforms.
This is a feature request for Sidekiq Pro 2.0 which would alleviate #1527. Could possibly address #1493.
The text was updated successfully, but these errors were encountered: