Hello guys, hello John,

With my team, I am using the wonderful Ruote engine (recently upgraded
to 2.3.0) in a production environment, with an average of 20 new
processes created every day.

I recently fixed a bug in a workflow that caused some workitems to
move into an error condition.

I had the following information about the error:
message:
  #<NoMethodError: undefined method `size' for nil:NilClass>
trace:
  /home/rails/apps/arts/shared/bundle/ruby/1.8/gems/ruote-2.2.0/lib/
ruote/exp/fe_concurrence.rb:286:in `merge_all_workitems'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/exp/fe_concurrence.rb:258:in
`reply_to_parent'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/exp/flowexpression.rb:228:in
`do_apply'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/worker.rb:326:in `launch'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/worker.rb:243:in `process'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/worker.rb:173:in `step'
  .../ruby/1.8/gems/ruote-2.2.0/lib/ruote/worker.rb:75:in `run'
  ./script/ruote_worker:23
  ./script/service:107:in `instance_eval'
  ./script/service:107:in `boot!'
  ./script/service:38:in `initialize'
  ./script/ruote_worker:12:in `new'
  ./script/ruote_worker:12

The mistake was the use of a :unless clause in a :concurrence
expression, as highlighted by the following unit test:
https://gist.github.com/beaefdcc70a718c42ed5

Nesting the :concurrence expression into a :sequence expression and
moving the :unless clause up into the :sequence resolved the problem
(but there were other ways, such as an :if expression).
Probably the issue is documented, but I could not find it.

However, my current problem is with the errors that such situation
raised.
>From my business point of view, I resolved with restarting a new
process for any process in error state.
Therefore the processes in error state had to be removed from the
engine.

I tried to kill those processes with
  @engine.kill_process(error.wfid)
but that seems to have no effect.

Am i making any mistake?
Can someone suggest me a way to remove definitely the processes?

Thank you
Claudio

-- 
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