ode-user mailing list archives

Hi, Lavanya --
That's a lot of questions!
I'll hit #2 and #4.
> 2. The InstanceManagement interface seems to have a suspend and resume
> operations. Is it possible to do a partial suspend and resume e.g. on a
> particular branch? For example if there were two activities A and B
> executing in parallel, I would like to suspend A and not B.
There is breakpointing functionality, i.e., "suspend" on an activity,
so yes. I'll have to look at the interfaces to see the extent to
which this is bubbled up.
> 4. Is there any support available or planned for allowing modifying to
> workflow instance during execution? For example, change an activity that
> has not been executed so far.
"Planned" is always an interesting question for an open source project
-- something is "planned" when someone commits to doing it... :)
That said, in terms of feasibility, ODE's state model is very
flexible. At the very far end of the spectrum, presuming that the new
process had the same external interface (ports, etc.), you could
completely replace an instance's state within the engine. However,
the problem of migrating open instances into a new instance is a
difficult question, and the version of something that I can imagine
working would be a replacement of the form
process_1 (state, variables) -> process_2 (initial,T(variables))
I.e., replace with a new process in its initial state but with
variable values initialized with values transformed from the variables
in the original process.
It should also be possible to do something like take an instance out
of one engine, run it in a different harness (e.g., some kind of
console application), and then put it back in a new state. It is
definitely feasible to alter XPath expressions and variable values.
I'm just thinking out loud -- any/all of this would make a challenging project.
--
paulrbrown@gmail.com
http://mult.ifario.us/