sidekiq_bulk_job 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 71203ea369c49030deec6cf4e48363f00c9308a8840832717c575f4621251ab4
4
- data.tar.gz: c41f6dd123ca271c2224ed21151c6401c03cafd40e1b9a6d187fec22190884bc
3
+ metadata.gz: 795d7a4f3d359d67ee4cf6894df0fc14193da298e778e779da208f38168f6a96
4
+ data.tar.gz: baf26c1a2d731da06faed59c9824298e4c22c7ae3cf8a67e4fb7c29fa2d4860e
5
5
  SHA512:
6
- metadata.gz: 4ee561021c0fe02bfd932f3e9d2a1a3db86b4445fe4ac16c4be5073122d813fc1937b81d4e15e7094362663f8b34a2ef75338f37c5ffdeba99262aea38919034
7
- data.tar.gz: 0fcdfb2dd97e3f22a946178c8c4db149d54e978a590606a5a472e32bd9b25e66839e4e9709c592e96f86fa0200a4c94de7288c24de6d77c26db5e89359d8c7ce
6
+ metadata.gz: ac4f23ee0e7a81ad91ee343c3c5df63baf656d48a3eebe2925f18cd6e87589f519c477f3f2c49c4cf0fa923586506591ee81014fce20a8ff848ab63a8df0b195
7
+ data.tar.gz: b770c30598a61234cbcd1534c84ed9f7f0782b47f3315c51e1aa2368b2a82eabdcc1cdbc8b062bbce491e7b726ef662e74448dd6474abd9a89be5c9d6ad7cace
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sidekiq_bulk_job (0.1.3)
4
+ sidekiq_bulk_job (0.1.4)
5
5
  sidekiq (~> 5.2.7)
6
6
 
7
7
  GEM
@@ -64,18 +64,37 @@ module SidekiqBulkJob
64
64
 
65
65
  class << self
66
66
 
67
- attr_accessor :prefix, :redis, :queue, :batch_size, :logger, :process_fail
67
+ attr_accessor :prefix, :redis, :queue, :scheduled_delay, :async_delay, :batch_size, :logger, :process_fail
68
68
 
69
- def config(redis: , logger: , process_fail: , queue: :default, batch_size: 3000, prefix: "SidekiqBulkJob")
69
+ def config(redis: , logger: , process_fail: , async_delay: 60, scheduled_delay: 10, queue: :default, batch_size: 3000, prefix: "SidekiqBulkJob")
70
70
  if redis.nil?
71
71
  raise ArgumentError.new("redis not allow nil")
72
72
  end
73
+ if logger.nil?
74
+ raise ArgumentError.new("logger not allow nil")
75
+ end
76
+ if process_fail.nil?
77
+ raise ArgumentError.new("process_fail not allow nil")
78
+ end
79
+ if async_delay.to_f < 2
80
+ raise ArgumentError.new("async_delay not allow less than 2 seconds.")
81
+ elsif async_delay.to_f > 5 * 60
82
+ raise ArgumentError.new("async_delay not allow greater than 5 minutes.")
83
+ end
84
+ if scheduled_delay.to_f < 2
85
+ raise ArgumentError.new("scheduled_delay not allow less than 2 seconds.")
86
+ elsif scheduled_delay.to_f > 30
87
+ raise ArgumentError.new("scheduled_delay not allow greater than 2 seconds.")
88
+ end
89
+
73
90
  self.redis = redis
74
91
  self.queue = queue
75
92
  self.batch_size = batch_size
76
93
  self.prefix = prefix
77
94
  self.logger = logger
78
95
  self.process_fail = process_fail
96
+ self.async_delay = async_delay.to_f
97
+ self.scheduled_delay = scheduled_delay.to_f
79
98
  end
80
99
 
81
100
  def set(options)
@@ -121,7 +140,7 @@ module SidekiqBulkJob
121
140
  args_redis_key = nil
122
141
  target = scheduled_set.find do |job|
123
142
  if job.klass == SidekiqBulkJob::ScheduledJob.to_s &&
124
- job.at.to_i.between?((at - 5).to_i, (at + 30).to_i) # 允许30秒延迟
143
+ job.at.to_i.between?((at - self.scheduled_delay).to_i, (at + self.scheduled_delay).to_i) # 允许30秒延迟
125
144
  _job_class_name, args_redis_key = job.args
126
145
  _job_class_name == job_class_name
127
146
  end
@@ -197,7 +216,7 @@ module SidekiqBulkJob
197
216
  if !_monitor.nil?
198
217
  # TODO debug log
199
218
  else
200
- SidekiqBulkJob::Monitor.client_push("queue" => queue, "at" => (time_now + 60).to_f, "class" => SidekiqBulkJob::Monitor, "args" => [time_now.to_f, job_class_name])
219
+ SidekiqBulkJob::Monitor.client_push("queue" => queue, "at" => (time_now + self.async_delay).to_f, "class" => SidekiqBulkJob::Monitor, "args" => [time_now.to_f, job_class_name])
201
220
  end
202
221
  end
203
222
 
@@ -1,3 +1,3 @@
1
1
  module SidekiqBulkJob
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq_bulk_job
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - scalaview