resque-integration 3.8.0 → 3.8.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.drone.yml +0 -18
- data/.gitignore +0 -2
- data/Appraisals +0 -7
- data/CHANGELOG.md +12 -1
- data/Gemfile +1 -0
- data/Gemfile.lock +229 -0
- data/dip.yml +2 -3
- data/gemfiles/rails4.2.gemfile +9 -0
- data/gemfiles/rails4.2.gemfile.lock +213 -0
- data/gemfiles/rails5.0.gemfile +9 -0
- data/gemfiles/rails5.0.gemfile.lock +224 -0
- data/gemfiles/rails5.1.gemfile +9 -0
- data/gemfiles/rails5.1.gemfile.lock +224 -0
- data/gemfiles/rails5.2.gemfile +9 -0
- data/gemfiles/rails5.2.gemfile.lock +234 -0
- data/lib/resque/integration/engine.rb +1 -1
- data/lib/resque/integration/unique.rb +6 -6
- data/lib/resque/integration/version.rb +1 -1
- data/resque-integration.gemspec +0 -2
- data/spec/resque/integration/unique_spec.rb +32 -4
- metadata +12 -18
@@ -144,7 +144,7 @@ module Resque
|
|
144
144
|
|
145
145
|
# When job is dequeued we should remove lock
|
146
146
|
def after_dequeue_lock(_meta_id, *args)
|
147
|
-
unlock(*args)
|
147
|
+
unlock(*args)
|
148
148
|
end
|
149
149
|
|
150
150
|
# Fail metadata if dequeue succeed
|
@@ -165,12 +165,12 @@ module Resque
|
|
165
165
|
end
|
166
166
|
|
167
167
|
# Returns true if resque job is in locked state
|
168
|
-
#
|
169
|
-
# Returns Boolean
|
170
168
|
def locked?(*args)
|
171
|
-
|
172
|
-
|
173
|
-
|
169
|
+
if Gem::Version.new(Redis::VERSION) < Gem::Version.new('4.3')
|
170
|
+
::Resque.redis.exists(lock_id(*args))
|
171
|
+
else
|
172
|
+
::Resque.redis.exists?(lock_id(*args))
|
173
|
+
end
|
174
174
|
end
|
175
175
|
|
176
176
|
# Dequeue unique job
|
data/resque-integration.gemspec
CHANGED
@@ -28,8 +28,6 @@ Gem::Specification.new do |gem|
|
|
28
28
|
gem.add_runtime_dependency 'multi_json'
|
29
29
|
gem.add_runtime_dependency 'rake'
|
30
30
|
|
31
|
-
gem.add_runtime_dependency 'redis'
|
32
|
-
|
33
31
|
gem.add_development_dependency 'bundler'
|
34
32
|
gem.add_development_dependency 'rspec', '~> 2.14'
|
35
33
|
gem.add_development_dependency 'rspec-its'
|
@@ -88,7 +88,7 @@ describe Resque::Integration::Unique, '#dequeue' do
|
|
88
88
|
|
89
89
|
@queue = :queue2
|
90
90
|
|
91
|
-
def self.execute(
|
91
|
+
def self.execute(*params)
|
92
92
|
sleep 0.1
|
93
93
|
end
|
94
94
|
end
|
@@ -105,14 +105,24 @@ describe Resque::Integration::Unique, '#dequeue' do
|
|
105
105
|
meta.should be_failed
|
106
106
|
end
|
107
107
|
|
108
|
+
it 'dequeues and unlocks job without args if job is not in work now' do
|
109
|
+
JobDequeueTest.enqueue
|
110
|
+
JobDequeueTest.should be_enqueued
|
111
|
+
|
112
|
+
JobDequeueTest.dequeue
|
113
|
+
JobDequeueTest.should_not be_enqueued
|
114
|
+
JobDequeueTest.should_not be_locked
|
115
|
+
|
116
|
+
meta = JobDequeueTest.get_meta(JobDequeueTest.meta_id)
|
117
|
+
meta.should be_failed
|
118
|
+
end
|
119
|
+
|
108
120
|
it 'does not dequeue jobs in progress' do
|
109
121
|
meta = JobDequeueTest.enqueue(1)
|
110
122
|
|
111
123
|
job = Resque.reserve(:queue2)
|
112
124
|
|
113
|
-
worker = Thread.new {
|
114
|
-
job.perform
|
115
|
-
}
|
125
|
+
worker = Thread.new { job.perform }
|
116
126
|
|
117
127
|
sleep 0.01 # give a worker some time to start
|
118
128
|
meta.reload!
|
@@ -124,6 +134,24 @@ describe Resque::Integration::Unique, '#dequeue' do
|
|
124
134
|
|
125
135
|
worker.join
|
126
136
|
end
|
137
|
+
|
138
|
+
it 'does not dequeue jobs without args in progress' do
|
139
|
+
meta = JobDequeueTest.enqueue
|
140
|
+
|
141
|
+
job = Resque.reserve(:queue2)
|
142
|
+
|
143
|
+
worker = Thread.new { job.perform }
|
144
|
+
|
145
|
+
sleep 0.01 # give a worker some time to start
|
146
|
+
meta.reload!
|
147
|
+
meta.should be_working
|
148
|
+
|
149
|
+
JobDequeueTest.dequeue
|
150
|
+
JobDequeueTest.should be_locked
|
151
|
+
JobDequeueTest.should be_enqueued
|
152
|
+
|
153
|
+
worker.join
|
154
|
+
end
|
127
155
|
end
|
128
156
|
|
129
157
|
describe Resque::Integration::Unique, '#on_failure_retry' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: resque-integration
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.8.
|
4
|
+
version: 3.8.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexei Mikhailov
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2024-01-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: resque
|
@@ -165,20 +165,6 @@ dependencies:
|
|
165
165
|
- - ">="
|
166
166
|
- !ruby/object:Gem::Version
|
167
167
|
version: '0'
|
168
|
-
- !ruby/object:Gem::Dependency
|
169
|
-
name: redis
|
170
|
-
requirement: !ruby/object:Gem::Requirement
|
171
|
-
requirements:
|
172
|
-
- - ">="
|
173
|
-
- !ruby/object:Gem::Version
|
174
|
-
version: '0'
|
175
|
-
type: :runtime
|
176
|
-
prerelease: false
|
177
|
-
version_requirements: !ruby/object:Gem::Requirement
|
178
|
-
requirements:
|
179
|
-
- - ">="
|
180
|
-
- !ruby/object:Gem::Version
|
181
|
-
version: '0'
|
182
168
|
- !ruby/object:Gem::Dependency
|
183
169
|
name: bundler
|
184
170
|
requirement: !ruby/object:Gem::Requirement
|
@@ -306,6 +292,7 @@ files:
|
|
306
292
|
- Appraisals
|
307
293
|
- CHANGELOG.md
|
308
294
|
- Gemfile
|
295
|
+
- Gemfile.lock
|
309
296
|
- README.md
|
310
297
|
- Rakefile
|
311
298
|
- app/assets/javascripts/standalone/progress_bar.js
|
@@ -320,6 +307,14 @@ files:
|
|
320
307
|
- docker-compose.development.yml
|
321
308
|
- docker-compose.drone.yml
|
322
309
|
- docker-compose.yml
|
310
|
+
- gemfiles/rails4.2.gemfile
|
311
|
+
- gemfiles/rails4.2.gemfile.lock
|
312
|
+
- gemfiles/rails5.0.gemfile
|
313
|
+
- gemfiles/rails5.0.gemfile.lock
|
314
|
+
- gemfiles/rails5.1.gemfile
|
315
|
+
- gemfiles/rails5.1.gemfile.lock
|
316
|
+
- gemfiles/rails5.2.gemfile
|
317
|
+
- gemfiles/rails5.2.gemfile.lock
|
323
318
|
- lib/generators/resque/integration/install/install_generator.rb
|
324
319
|
- lib/resque-integration.rb
|
325
320
|
- lib/resque/integration.rb
|
@@ -386,8 +381,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
386
381
|
- !ruby/object:Gem::Version
|
387
382
|
version: '0'
|
388
383
|
requirements: []
|
389
|
-
|
390
|
-
rubygems_version: 2.6.1
|
384
|
+
rubygems_version: 3.0.3
|
391
385
|
signing_key:
|
392
386
|
specification_version: 4
|
393
387
|
summary: Seamless integration of resque with resque-progress and resque-lock
|