eclipselabs/passerelle

Add concept of "daemon" actors

Closed this issue · 2 comments

Passerelle has an algorithm to automatically terminate the execution of a flow. 
(cfr section "Model start-up and shutdown" in 
[PasserelleActorDevelopmentGuide#Model start-up and shutdown] )

This mechanism currently only works reliably with fully connected actor graphs, 
i.e. where the only actors that don't have connected inputs, are finite source 
actors.

With the recent focus on advanced in-model error handling, the use of 
ErrorHandler actors will become mainstream. But ErrorHandlers are typically 
unconnected (on their input side), and thus prevent the automated termination 
of the models in which they're used.

So the engine must be made aware of the fact that such unconnected actors 
should not prevent clean & automated model termination, when all other actors 
have finished their work.

This can be based on the concept of "daemon actors", comparable to daemon 
threads.


Original issue reported on code.google.com by erwin...@gmail.com on 18 Dec 2012 at 1:32

Remark that for the new event-driven director (ET domain), this is not an 
issue. 

For PN-derived directors (thread-per-actor) it is an issue.

Original comment by erwin...@gmail.com on 18 Dec 2012 at 1:49

  • Changed state: Started
Model termination logic is operational for models incl daemon actors, also with 
model executions with actor exceptions.

Original comment by erwin...@gmail.com on 5 Jan 2013 at 11:14

  • Changed state: Fixed