dynflow 0.8.22 → 0.8.23

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: 2dca125fdba138da52e0ffaff7b17a979945be2b
4
- data.tar.gz: de40a2fcd90aa602ba2db2cc12e28bfc435c750c
3
+ metadata.gz: 877042adab09ea7aeb07b0459738b0016e06998c
4
+ data.tar.gz: b2ffef502d8ab247e104ccb54b110ba84252e3c3
5
5
  SHA512:
6
- metadata.gz: 760ace645251b0b91e0454c2794b4546a93504f542fb2f07452fe76eaed1e75326d1aeabcc9394391b12a410064a08e35413a813f88f9acf0ffcef3227309369
7
- data.tar.gz: 4b69a6c1590bfff3c96b04dc5da8c76119680482375f8341331984b3a8deb1bdbc08a06b194f56bacc28fc323a6a55a7e8ff6f0d60b0edc7121ae29f101fa4ab
6
+ metadata.gz: 06dd15b53061f0db20c3c488948d50a6e265fec7fdf99707d934f6a7c0efe856d96c1b6e7829ea0469f9d8cefa6abfc2734545e3b0ab880e0ad493e492518aa2
7
+ data.tar.gz: 410f852667748f00077feae8b7f066fca50478c7d481db1d75542bd2c260406b2277c807f18a41c4de7c7228bd111c71d0161bb1f6d857fee29d1506bbefbfc8
@@ -43,13 +43,13 @@ module Dynflow
43
43
 
44
44
  def start_termination(*args)
45
45
  super
46
- logger.info 'shutting down Core ...'
46
+ logger.info 'shutting down Dynflow Core ...'
47
47
  @pool.tell([:start_termination, Concurrent.future])
48
48
  end
49
49
 
50
50
  def finish_termination
51
51
  @director.terminate
52
- logger.error '... core terminated.'
52
+ logger.error '... Dynflow Core has shut down.'
53
53
  super
54
54
  end
55
55
 
@@ -1,3 +1,3 @@
1
1
  module Dynflow
2
- VERSION = '0.8.22'
2
+ VERSION = '0.8.23'
3
3
  end
@@ -11,14 +11,19 @@ module Dynflow
11
11
  @world = world
12
12
  @polling_interval = options[:polling_interval] || 60
13
13
  @memory_info_provider = options[:memory_info_provider] || GetProcessMem.new
14
+ @memory_checked_callback = options[:memory_checked_callback]
15
+ @memory_limit_exceeded_callback = options[:memory_limit_exceeded_callback]
14
16
  set_timer options[:initial_wait] || @polling_interval
15
17
  end
16
18
 
17
19
  def check_memory_state
18
- if @memory_info_provider.bytes > @memory_limit
20
+ current_memory = @memory_info_provider.bytes
21
+ if current_memory > @memory_limit
22
+ @memory_limit_exceeded_callback.call(current_memory, @memory_limit) if @memory_limit_exceeded_callback
19
23
  # terminate the world and stop polling
20
24
  world.terminate
21
25
  else
26
+ @memory_checked_callback.call(current_memory, @memory_limit) if @memory_checked_callback
22
27
  # memory is under the limit - keep waiting
23
28
  set_timer
24
29
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dynflow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.22
4
+ version: 0.8.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Necas
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-03-19 00:00:00.000000000 Z
12
+ date: 2017-03-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: multi_json