Hi guys,

there is one open issue regarding the extension activity implementation
I'd like to discuss with you.

Currently, the extension framework supports two models, i) to implement
an extension operation for a very short running, synchronous operation
and b) to give the developer a bit more control of when to complete the
activity when implementing in an asynchronous manner (i.e. directly
calling a complete(), completeWithFault() method vs. having this logic
wrapping a runSync() method which is implemented by the extension developer.

complete() and completeWithFault() use Jacob channels to notify that the
activity has been completed.

Now the question: The approach described above works more or less fine
for short running activity implementation. The problem I see is how to
deal with an engine crash after the extension activity has been started
and before it has been completed. In this case we've a problem as we can
not recover the extension code when the PI's state has been recovered.
Thus, we're waiting forever until the extension activity completes.

One possibility would be to also restart the extension implementation
(how?) when the PI recovers, but this might be harmful when the
extension has already done something that must not be repeated. So I
guess it depends on the individual case, but I'm wondering how to deal
with this problem appropriately.

Any ideas? I hope so ;)

Cheers,
  Tammo

Reply via email to