On Fri, Apr 10, 2009 at 11:34 PM, harshal <[email protected]> wrote:
>
> Is there any reference or pointer on recovery part in case Ruote
> crashes while executing a process?
> It would be great if you could throw some light on this.

Hello Harshal,

It's true that there's not much documentation about this. I will
remedy to that :
http://rubyforge.org/tracker/index.php?func=detail&aid=25384&group_id=2609&atid=10195

Here are a few hints :

When a process operation result in an error, the engine will register
the error in its error journal and that segment of the process will
thus get stuck. You can interrogate the status of a process
programmatically via :

  process_status = engine.process_status(workflow_instance_id)

where 'workflow_instance_id' is a string like "20090408-habujotsuni"
which is the unique process instance identifier.

This process status holds a "errors" field which lists the errors
affecting the process instance. A sound, running, process instance has
an empty error list.

You're supposed to be able to fix the cause of the error and then
replay at the error to let the flow resume.

  e = engine.process_status(wfid).errors.first
  engine.replay_at_error(e)

There is an old piece of documentation about error replaying at :

  http://openwferu.rubyforge.org/journal.html (the last section
"replaying journals" is still valid).

Note that ruote-rest and ruote-web2 do expose error browsing and
replaying via their /errors resource.

It's possible to define behaviours for segments of processes upon
error (subprocesses/participant, alternative paths that get executed
in case of errors) :

  http://openwferu.rubyforge.org/on_error.html

Now, if the Ruby runtime in which ruote resides crashes, you should be
able to simply restart the application and ruote will simply be able
to continue his mission (provided you're using it with some kind of
persistence and provided the Ruby runtime didn't crash while ruote was
in the middle of saving some process status information).


Best regards,

-- 
John Mettraux   -   http://jmettraux.wordpress.com

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