certi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[certi-dev] Cleanup in RTIA when federate crashes


From: Timi Tuohenmaa
Subject: [certi-dev] Cleanup in RTIA when federate crashes
Date: Tue, 5 Aug 2014 16:38:03 +0300

Hi,

I sent you a patch (https://savannah.nongnu.org/patch/?8494) to make
RTIA.exe exit when federate crashes. Now I noticed that while it does
make RTIA act similarly in Linux and Windows it does not actually
solve the problem.

Reason is that since RTIA does quit gracefully it also makes RTIG
think that federate exited normally. And therefore it does not do
killFederate stuff (like unsubscribe, unpublish and object attribute
releases).

To be honest I think killFederate is something that should be done
even in normal federate exit, but I am not sure if HLA specs say
anything about automatic unpublish and unsubscribe etc. At least in
Portico unsubscribe etc is done automatically every time federate
quits for what ever reason.

I'm not able to test in Linux just now, but I think simple program
that subscribes some attributes and then crashes (and then RTIA
exiting automatically) is not working well either.

There would be two alternative solutions for this problem.

One would be to add flag to Communications class that makes sure that
NM_Close_Connexion is not sent in destructor in case federate crash
has occured.

Other would be to change RTIG to do full cleanup in every case when
federate quits (normally or by crash). I don't see reason why it is
not done in all cases. The federation becomes broken if federate exits
without unsubscribing and unpublishing correctly anyways.

Kind regards,
Timi Tuohenmaa



reply via email to

[Prev in Thread] Current Thread [Next in Thread]