mirror of
				https://github.com/deanpcmad/sidekiq-limit_fetch.git
				synced 2022-11-09 13:54:36 -05:00 
			
		
		
		
	Prepare for Sidekiq v4.0.0
This commit is contained in:
		
							parent
							
								
									fc51ed7759
								
							
						
					
					
						commit
						e693dcf205
					
				
					 6 changed files with 5 additions and 19 deletions
				
			
		
							
								
								
									
										1
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							| 
						 | 
				
			
			@ -1,2 +1,3 @@
 | 
			
		|||
Gemfile.lock
 | 
			
		||||
pkg/
 | 
			
		||||
.bundle/
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										2
									
								
								Gemfile
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								Gemfile
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
source 'https://rubygems.org'
 | 
			
		||||
gemspec
 | 
			
		||||
 | 
			
		||||
gem 'sidekiq', github: 'mperham/sidekiq'
 | 
			
		||||
gem 'sidekiq', github: 'mperham/sidekiq', branch: 'internal_rewrite'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -34,7 +34,7 @@ class Sidekiq::LimitFetch
 | 
			
		|||
  private
 | 
			
		||||
 | 
			
		||||
  def fetch_message
 | 
			
		||||
    queue, _ = redis_brpop *@queues.acquire, Sidekiq::Fetcher::TIMEOUT
 | 
			
		||||
    queue, _ = redis_brpop *@queues.acquire, Sidekiq::BasicFetch::TIMEOUT
 | 
			
		||||
  ensure
 | 
			
		||||
    @queues.release_except queue
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,21 +3,7 @@ module Sidekiq::LimitFetch::Redis
 | 
			
		|||
 | 
			
		||||
  def nonblocking_redis
 | 
			
		||||
    redis do |redis|
 | 
			
		||||
      # Celluloid 0.16 broke this method
 | 
			
		||||
      if Celluloid::VERSION.to_f >= 0.16
 | 
			
		||||
        yield redis
 | 
			
		||||
      else
 | 
			
		||||
      # prevent blocking of fetcher
 | 
			
		||||
      # more bullet-proof and faster (O_O)
 | 
			
		||||
      # than using Celluloid::IO
 | 
			
		||||
      #
 | 
			
		||||
      # https://github.com/brainopia/sidekiq-limit_fetch/issues/41
 | 
			
		||||
      # explanation of why Future#value is beneficial here
 | 
			
		||||
        begin
 | 
			
		||||
          Celluloid::Future.new { yield redis }.value
 | 
			
		||||
        rescue Celluloid::Task::TerminatedError
 | 
			
		||||
        end
 | 
			
		||||
      end
 | 
			
		||||
      yield redis
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,7 +15,7 @@ Gem::Specification.new do |gem|
 | 
			
		|||
  gem.test_files    = gem.files.grep %r{^spec/}
 | 
			
		||||
  gem.require_paths = %w(lib)
 | 
			
		||||
 | 
			
		||||
  gem.add_dependency 'sidekiq', '>= 2.6.5', '< 4.0'
 | 
			
		||||
  gem.add_dependency 'sidekiq', '~> 4.0.0'
 | 
			
		||||
  gem.add_development_dependency 'rspec', '~> 3.2.0'
 | 
			
		||||
  gem.add_development_dependency 'rake'
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,4 @@
 | 
			
		|||
require 'sidekiq/limit_fetch'
 | 
			
		||||
require 'celluloid/autostart'
 | 
			
		||||
require 'sidekiq/fetch'
 | 
			
		||||
 | 
			
		||||
Sidekiq.logger = nil
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue