lib/dynflow/executors/parallel.rb in dynflow-1.8.2 vs lib/dynflow/executors/parallel.rb in dynflow-1.8.3
- old
+ new
@@ -1,6 +1,7 @@
# frozen_string_literal: true
+
module Dynflow
module Executors
class Parallel
require 'dynflow/executors/abstract/core'
require 'dynflow/executors/parallel/core'
@@ -10,11 +11,11 @@
attr_reader :core
def initialize(world,
executor_class:,
heartbeat_interval:,
- queues_options: { :default => { :pool_size => 5 }})
+ queues_options: { :default => { :pool_size => 5 } })
@world = world
@logger = world.logger
@core = executor_class.spawn name: 'parallel-executor-core',
args: [world, heartbeat_interval, queues_options],
initialized: @core_initialized = Concurrent::Promises.resolvable_future
@@ -22,10 +23,10 @@
def execute(execution_plan_id, finished = Concurrent::Promises.resolvable_future, wait_for_acceptance = true)
accepted = @core.ask([:handle_execution, execution_plan_id, finished])
accepted.value! if wait_for_acceptance
finished
- rescue Concurrent::Actor::ActorTerminated => error
+ rescue Concurrent::Actor::ActorTerminated
dynflow_error = Dynflow::Error.new('executor terminated')
finished.reject dynflow_error unless finished.resolved?
raise dynflow_error
rescue => e
finished.reject e unless finished.resolved?