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
