midget_jobs 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cbadd5ec1b0ac85a4b21c554c986c3b879d465d5259c845d643742d3dafd8197
|
4
|
+
data.tar.gz: '0834f8b2be247632dc702641b19800b1a0d4aeb2bcf6e8d51a959f705a2850ab'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f772366031db01f604822d3ad1acba4c95b2d3ac8ca23b3662807755c4cc8ea69806b2a5516e3610555e1e5ad52a4dd6947984c34734a38943a50e1d8354e2d2
|
7
|
+
data.tar.gz: 34a59c524980dc5fc8c76d9f24709324069133237977f1be3f86b2ba1482d65089cb12856c210d0e6aed62f8cfa2bb3ea5373e15ecbd53bcb3e398cd99603883
|
@@ -14,6 +14,7 @@ module MidgetJobs
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def wakeup!
|
17
|
+
Rails.logger.info "#{self.class.name}.#{__method__}"
|
17
18
|
@thread.wakeup
|
18
19
|
end
|
19
20
|
|
@@ -22,7 +23,7 @@ module MidgetJobs
|
|
22
23
|
def process_available_jobs
|
23
24
|
MidgetJob.transaction do
|
24
25
|
MidgetJob.for_processing.limit(Rails.configuration.x.midget_jobs.at_once).lock("FOR UPDATE SKIP LOCKED").each do |midget_job|
|
25
|
-
Rails.logger.info "#{self.class.name} firing midget_job: #{midget_job.id}"
|
26
|
+
Rails.logger.info "#{self.class.name} firing midget_job: #{midget_job.id} - #{midget_job.serialized['job_class']}"
|
26
27
|
midget_job.fire_thread
|
27
28
|
midget_job.destroy!
|
28
29
|
end
|
@@ -33,8 +34,10 @@ module MidgetJobs
|
|
33
34
|
def sleep_till_next_job
|
34
35
|
most_current = MidgetJob.order(run_at: :asc).first
|
35
36
|
if most_current
|
37
|
+
Rails.logger.info "#{self.class.name}.#{__method__} (#{[most_current.run_at.to_f - Time.current.to_f, 0.001].max} sec) till #{most_current.serialized['job_class']}"
|
36
38
|
sleep [most_current.run_at.to_f - Time.current.to_f, 0.001].max
|
37
39
|
else
|
40
|
+
Rails.logger.info "#{self.class.name}.#{__method__}(Thread.stop)"
|
38
41
|
Thread.stop
|
39
42
|
end
|
40
43
|
end
|
data/lib/midget_jobs/version.rb
CHANGED
@@ -7,8 +7,8 @@ module PostgresNotificationsListener
|
|
7
7
|
Rails.logger.info "#{self.name} listening_job running on #{self.name.pluralize.underscore}_notices"
|
8
8
|
self.connection.execute "LISTEN #{self.name.pluralize.underscore}_notices"
|
9
9
|
loop do
|
10
|
-
Rails.logger.info "#{self.name} listening_job wait_for_notify"
|
11
10
|
begin
|
11
|
+
Rails.logger.info "#{self.name} listening_job wait_for_notify"
|
12
12
|
self.connection.raw_connection.wait_for_notify do |event, pid, payload|
|
13
13
|
data = JSON.parse payload, symbolize_names: true
|
14
14
|
Rails.logger.info "postgres #{event.inspect}, pid: #{pid.inspect}, data: #{data.inspect}"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: midget_jobs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- josefchmel
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|