skiplock 1.1.2 → 1.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/skiplock/job.rb +5 -4
- data/lib/skiplock/manager.rb +2 -2
- data/lib/skiplock/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ebc3d59d7709f435ee1f2ecb3773b0f8d64361c80c01a23c8a4a4bd89972874
|
4
|
+
data.tar.gz: 8f3a5cbdbfe91b9ef61207a4655552363b9a0fdd4d8caf29c1c6e83c7135f80e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a4d693051b2bfc567ccd1407ea26f8105ab3997e2e75452fdb037c0b2bd8d235c0075a320703e0c0b0ed77d2f326bcbf1efebdf87f0a3df82c9bee23111011d0
|
7
|
+
data.tar.gz: 2554c0c9449429890fcdd7614791cae475e3ede8299c70df87ed94857a2ec165e89d1770d70e226cd0f06db8ae4d49d523de377e536043f6bf8f98da5a21aa2b
|
data/lib/skiplock/job.rb
CHANGED
@@ -27,9 +27,9 @@ module Skiplock
|
|
27
27
|
timestamp = Time.at(timestamp) if timestamp
|
28
28
|
if Thread.current[:skiplock_job].try(:id) == activejob.job_id
|
29
29
|
Thread.current[:skiplock_job].activejob_error = options[:error]
|
30
|
-
Thread.current[:skiplock_job].data['activejob_error'] = true
|
31
30
|
Thread.current[:skiplock_job].executions = activejob.executions
|
32
31
|
Thread.current[:skiplock_job].exception_executions = activejob.exception_executions
|
32
|
+
Thread.current[:skiplock_job].exception_executions['activejob_error'] = true
|
33
33
|
Thread.current[:skiplock_job].scheduled_at = timestamp
|
34
34
|
Thread.current[:skiplock_job]
|
35
35
|
else
|
@@ -65,8 +65,8 @@ module Skiplock
|
|
65
65
|
self.worker_id = nil
|
66
66
|
self.updated_at = Time.now > self.updated_at ? Time.now : self.updated_at + 1 # in case of clock drifting
|
67
67
|
if self.exception
|
68
|
-
self.exception_executions["[#{self.exception.class.name}]"] = self.exception_executions["[#{self.exception.class.name}]"].to_i + 1 unless self.
|
69
|
-
if (self.executions.to_i >= self.max_retries + 1) || self.
|
68
|
+
self.exception_executions["[#{self.exception.class.name}]"] = self.exception_executions["[#{self.exception.class.name}]"].to_i + 1 unless self.exception_executions.key?('activejob_error')
|
69
|
+
if (self.executions.to_i >= self.max_retries + 1) || self.exception_executions.key?('activejob_error') || self.exception.is_a?(Skiplock::Extension::ProxyError)
|
70
70
|
self.expired_at = Time.now
|
71
71
|
else
|
72
72
|
self.scheduled_at = Time.now + (5 * 2**self.executions.to_i)
|
@@ -116,8 +116,9 @@ module Skiplock
|
|
116
116
|
self.max_retries = (self.data['options'].key?('max_retries') ? self.data['options']['max_retries'].to_i : max_retries) rescue max_retries
|
117
117
|
self.max_retries = 20 if self.max_retries < 0 || self.max_retries > 20
|
118
118
|
self.purge = (self.data['options'].key?('purge') ? self.data['options']['purge'] : purge_completion) rescue purge_completion
|
119
|
-
job_data = { 'job_class' => self.job_class, 'queue_name' => self.queue_name, 'locale' => self.locale, 'timezone' => self.timezone, 'priority' => self.priority, 'executions' => self.executions, 'exception_executions' => self.exception_executions.dup, 'job_id' => self.id, 'enqueued_at' => self.updated_at, 'arguments' => (self.data['arguments'] || []) }
|
119
|
+
job_data = { 'job_class' => self.job_class, 'queue_name' => self.queue_name, 'locale' => self.locale, 'timezone' => self.timezone, 'priority' => self.priority, 'executions' => self.executions, 'exception_executions' => self.exception_executions.dup, 'job_id' => self.id, 'enqueued_at' => self.updated_at.iso8601, 'arguments' => (self.data['arguments'] || []) }
|
120
120
|
self.executions = self.executions.to_i + 1
|
121
|
+
self.data_will_change!
|
121
122
|
Thread.current[:skiplock_job] = self
|
122
123
|
start_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
123
124
|
begin
|
data/lib/skiplock/manager.rb
CHANGED
@@ -141,11 +141,11 @@ module Skiplock
|
|
141
141
|
|
142
142
|
def setup_logger
|
143
143
|
@config[:loglevel] = 'info' unless ['debug','info','warn','error','fatal','unknown'].include?(@config[:loglevel].to_s)
|
144
|
-
@logger = ActiveSupport::Logger.new(STDOUT)
|
144
|
+
@logger = ActiveSupport::BroadcastLogger.new(::Logger.new(STDOUT))
|
145
145
|
@logger.level = @config[:loglevel].to_sym
|
146
146
|
Skiplock.logger = @logger
|
147
147
|
if @config[:logfile].to_s.length > 0
|
148
|
-
@logger.
|
148
|
+
@logger.broadcast_to(::Logger.new(File.join(Rails.root, 'log', @config[:logfile].to_s), 'daily'))
|
149
149
|
ActiveJob::Base.logger = nil
|
150
150
|
end
|
151
151
|
if @config[:standalone]
|
data/lib/skiplock/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skiplock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tin Vo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-10-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activejob
|
@@ -109,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
requirements: []
|
112
|
-
rubygems_version: 3.
|
112
|
+
rubygems_version: 3.4.10
|
113
113
|
signing_key:
|
114
114
|
specification_version: 4
|
115
115
|
summary: ActiveJob Queue Adapter for PostgreSQL
|