dynflow 1.6.8 → 1.6.10

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: e8f8620a4de5e01dbd253d659f07f4221a41a88112c7ca9b1440591bfc0a7b2f
4
- data.tar.gz: 13d941834dc18889bef6c0bf8bee95f5286104974fa0ded2bb9a5ffda6f6ea81
3
+ metadata.gz: 79387ebdc9ad0bbae88897885da885483c4d57e08af9be69f6f2369be67bbe5b
4
+ data.tar.gz: aa5413ff3913decab84dc70e86f94f4293acfcc16340e7ad6216abf9943335b1
5
5
  SHA512:
6
- metadata.gz: f84d05b76492e25562a8cb06628bfd69f8d7f5a28b62d9bdd97469db206c8d0378209609376283c21fa664a7b13587df1babc828f92f15e58e95fe5ad411a85c
7
- data.tar.gz: fbb2db621fb8903f314cb061258230b5c0567c4aaf6beb8e051027f4206c2a14ed2c734b90160437060c5fa36823c7febb946d7b41d5d974d798b58410e083e5
6
+ metadata.gz: 99132ff502c108b47595d211caba78c3034adb05390937269814d09a8da67c546b9bc2e7a2c776bcba0596d76ee50b7229c7497aad77e2d2483c43351d4a65a5
7
+ data.tar.gz: 52e2bb51d1fdc668c8837646635c37c58c65761d5ef3812294838dfacc54dfc48ae26550bd132a077dfc8579ee4fa86787fe17d27f45389a6a536328276de897
@@ -167,7 +167,7 @@ module Dynflow
167
167
  @logger = world.logger
168
168
  @execution_plan_managers = {}
169
169
  @rescued_steps = {}
170
- @planning_plans = []
170
+ @planning_plans = Set.new
171
171
  end
172
172
 
173
173
  def current_execution_plan_ids
@@ -175,6 +175,8 @@ module Dynflow
175
175
  end
176
176
 
177
177
  def handle_planning(execution_plan_uuid)
178
+ return [] if @planning_plans.include? execution_plan_uuid
179
+
178
180
  @planning_plans << execution_plan_uuid
179
181
  [PlanningWorkItem.new(execution_plan_uuid, :default, @world.id)]
180
182
  end
@@ -85,6 +85,9 @@ module Dynflow
85
85
  logger.info('Performing validity checks')
86
86
  @world.perform_validity_checks
87
87
  logger.info('Finished performing validity checks')
88
+ if @world.delayed_executor && !@world.delayed_executor.started?
89
+ @world.delayed_executor.start
90
+ end
88
91
  @recovery = false
89
92
  end
90
93
 
@@ -152,6 +152,9 @@ module Dynflow
152
152
  # we can't do any operation until the Rails.application.dynflow.world is set
153
153
  config.auto_execute = false
154
154
  config.auto_validity_check = false
155
+ if sidekiq_worker? && !Sidekiq.options[:queues].include?("dynflow_orchestrator")
156
+ config.delayed_executor = nil
157
+ end
155
158
  end
156
159
  end
157
160
 
data/lib/dynflow/rails.rb CHANGED
@@ -46,6 +46,9 @@ module Dynflow
46
46
  invalidated_worlds = world.perform_validity_checks
47
47
  world.auto_execute
48
48
  world.post_initialization if invalidated_worlds > 0
49
+ if @world.delayed_executor && !@world.delayed_executor.started?
50
+ @world.delayed_executor.start
51
+ end
49
52
  config.run_post_executor_init_hooks(world)
50
53
  end
51
54
  end
@@ -5,7 +5,7 @@ module Dynflow
5
5
  extend Mimic
6
6
  mimic! World
7
7
 
8
- attr_reader :clock, :executor, :middleware, :coordinator
8
+ attr_reader :clock, :executor, :middleware, :coordinator, :delayed_executor
9
9
  attr_accessor :action
10
10
 
11
11
  def initialize(_config = nil)
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Dynflow
3
- VERSION = '1.6.8'
3
+ VERSION = '1.6.10'
4
4
  end
data/lib/dynflow/world.rb CHANGED
@@ -77,7 +77,7 @@ module Dynflow
77
77
  @delayed_executor ||= try_spawn(:delayed_executor, Coordinator::DelayedExecutorLock)
78
78
  @execution_plan_cleaner ||= try_spawn(:execution_plan_cleaner, Coordinator::ExecutionPlanCleanerLock)
79
79
  update_register
80
- @delayed_executor.start if @delayed_executor && !@delayed_executor.started?
80
+ @delayed_executor.start if auto_validity_check && @delayed_executor && !@delayed_executor.started?
81
81
  self.auto_execute if @config.auto_execute
82
82
  end
83
83
 
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: 1.6.8
4
+ version: 1.6.10
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: 2022-12-06 00:00:00.000000000 Z
12
+ date: 2023-03-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: multi_json