John,

I am running 2.1.10 and ran into this problem with concurrent
execution.
A & B run concurrently then C executes.  It seems that C is not seeing
the results of B.  I wrote this testcase that seems to show the same
problem on my machine.
Thanks,
Pat.

require File.join(File.dirname(__FILE__), 'base')

#require 'ruote/part/hash_participant'


class EftConcurrenceTest < Test::Unit::TestCase
  include FunctionalBase

  def test_issue
      pdef = Ruote.process_definition do
        sequence do
          concurrence do
            alpha
            bravo
          end
          charlie
        end
      end

      alpha = @engine.register_participant :alpha do |workitem|
        workitem.fields['alpha_entry'] = 'done'
      end

      bravo = @engine.register_participant :bravo do |workitem|
        workitem.fields['bravo_entry'] = 'done'
      end

      charlie = @engine.register_participant :charlie do |workitem|
        workitem.fields.each do |k,v|
          puts "key:#{k}, value:#{v}"
        end
        # seems to only see the result from alpha and does not get
bravo
        # although bravo seemed to have executed
      end

     wfid = @engine.launch(pdef)

     @engine.wait_for(wfid)
  end

end

-- 
you received this message because you are subscribed to the "ruote users" group.
to post : send email to [email protected]
to unsubscribe : send email to [email protected]
more options : http://groups.google.com/group/openwferu-users?hl=en

Reply via email to