jober 0.3.28 → 0.3.30

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
  SHA1:
3
- metadata.gz: 9ebb1d58780f3ccb1bb5b16f58d165224647804a
4
- data.tar.gz: 9f198e9553a3ebe5f179431e0b1465171a6c543c
3
+ metadata.gz: f7ffebeb0c28297bb8898cfed98c2b865a7930ea
4
+ data.tar.gz: bcd0d4b2496c31a8546b67127750309d4a0b11e5
5
5
  SHA512:
6
- metadata.gz: 7559fcf08a3eaff1f5c583c903e739f4d37da88060d28d19fcb6294103b4131ef0b74c13e62d6b4a648163c05033d7e39f0b21d6f2869ae9e18751c4e148aa1c
7
- data.tar.gz: 3f504c1ba440f5292d9edfb77b78a15cf00d06fa67cb185cb8d9ab80f084981f48ab3d63fc85c41ef722c1b0fe1967a3c8ac0818917cb8893046f511853346b2
6
+ metadata.gz: c66d7db2864706bc7314844b1c8ec443507a4207a998dd6a3fd08cd802909bb5fbb95a61f459bc60edc664bd140454b6ad53c1b1882881bc4339d25dab8453cd
7
+ data.tar.gz: 03402f170459a3713768578fc41ecaf0909ab0262735cd2f31ffaf25ee1b71bda815a83cc34afb78472aaddc1c86bd38e886118d8d1b1228ca6fcff766dd1971
@@ -45,8 +45,13 @@ class Jober::AbstractTask
45
45
  @skip_delay = opts[:skip_delay]
46
46
  end
47
47
 
48
+ def before_execute
49
+ nil
50
+ end
51
+
48
52
  def execute
49
53
  info "=> start"
54
+ before_execute
50
55
  @start_at = Time.now
51
56
  @finished = false
52
57
  self.class.write_timestamp(:started)
@@ -60,12 +65,22 @@ class Jober::AbstractTask
60
65
  end
61
66
  info "<= end (in #{Time.now - @start_at})"
62
67
  @finished = true
68
+ after_execute
63
69
  self
64
70
  rescue Object
65
71
  self.class.write_timestamp(:crashed)
72
+ on_crashed
66
73
  raise
67
74
  end
68
75
 
76
+ def after_execute
77
+ nil
78
+ end
79
+
80
+ def on_crashed
81
+ nil
82
+ end
83
+
69
84
  def run_loop
70
85
  info { "running loop" }
71
86
 
data/lib/jober/ar_loop.rb CHANGED
@@ -39,10 +39,19 @@ class Jober::ARLoop < Jober::Task
39
39
 
40
40
  h = {:batch_size => self.class.get_batch_size}
41
41
  h[:start] = last_batch_id + 1 if last_batch_id
42
+
43
+ t1 = Time.now
42
44
  prox.find_in_batches(h) do |batch|
45
+ t = Time.now
46
+
43
47
  res = perform(batch)
44
48
  cnt += batch.size
45
- info { "#{prefix}process batch #{res.inspect}, #{cnt} from #{count}, lastid #{batch.last.id}" }
49
+
50
+ select_time = t - t1
51
+ t1 = Time.now
52
+ process_time = t1 - t
53
+
54
+ info { "#{prefix}process batch #{res.inspect} | #{cnt} from #{count} | lastid: #{batch.last.id} (#{format("%.1f", select_time)}s, #{format("%.1f", process_time)}s)" }
46
55
  set_store("lastbatch", batch.last.id)
47
56
  break if stopped
48
57
  end
data/lib/jober/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Jober
2
- VERSION = "0.3.28"
2
+ VERSION = "0.3.30"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jober
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.28
4
+ version: 0.3.30
5
5
  platform: ruby
6
6
  authors:
7
7
  - "'Konstantin Makarchev'"