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

Remove sidekiq version lock #3

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

rohitjangid
Copy link

No description provided.

@ndbroadbent
Copy link

Hi @rohitjangid - Have you tested this change with the latest version of Sidekiq? If so, does it still work very well and provide reliability?

Also I don't know if this gem is maintained anymore. Maybe we can fork it and help to keep it up to date. (Although I have some concerns about the LGPL license.)

@rohitjangid
Copy link
Author

Hi @ndbroadbent - Yes, I have tested this change with sidekiq version 5.1.3 and found no issue with it. It do provide reliability.

I am not sure about the license so could'nt comment on that. But we sure could maintain this gem if maintainer allows.

@ndbroadbent
Copy link

Ok great, thanks for your reply! I only need reliability and batch jobs (and I'm using sidekiq-batch for those.)

I'll try this on my staging environment and see what happens when I kill some workers.

(I think the LGPL license is not too bad. I was just worried by the "GPL" part. After reading about the LGPL, I think it's ok to use it as a library, as long as I don't copy/paste the code into my own application. And if I fork and modify the code, I just need to make my modifications public.)

Thanks again!

@ndbroadbent
Copy link

Hmm, I think this is actually broken with Sidekiq 5.2.2.

I'm testing on my local machine. If I stop Sidekiq and then enqueue a job from Rails, I can see "Enqueued: 1" in the Sidekiq web UI. When I start the Sidekiq worker but running sidekiq, I can see that the job is removed from the queue ("Enqueued: 0"), but the worker doesn't actually process it. (There is no output in the console, and nothing happens.)

This only happens when I add this code to config/initializers/sidekiq.rb:

Sidekiq.configure_server do |config|
  Sidekiq::ReliableFetcher.setup_reliable_fetch!(config)
end

If I remove that, then the Sidekiq worker fetches the job and executes it properly.

I might see if I can figure out what changed in the latest version of Sidekiq, and I'll try to fix this issue.

@ndbroadbent
Copy link

Hey actually GitLab already forked this gem and released gitlab-sidekiq-fetcher (GitLab repo).

This version is being maintained by GitLab and is regularly updated, and it's used in their production Rails app. I just tried it out and it works perfectly with the latest Sidekiq.

You just need this in your Gemfile:

gem 'gitlab-sidekiq-fetcher', require: 'sidekiq-reliable-fetch'

@rohitjangid
Copy link
Author

Great, Seems like gitlab is working on this gem and will keep updating this gem. Will surely test this gem as well :)

eadz pushed a commit to eadz/sidekiq-reliable-fetch that referenced this pull request May 4, 2020
…multiple-sidekiq-processes' into 'master'

Reliable fetch rework

Closes TEA-ebook#3 and #5

See merge request gitlab-org/sidekiq-reliable-fetch!2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants