On 7/2/07, Durk Talsma <[EMAIL PROTECTED]> wrote: > I agree that it can be very frustrating to have a flightgear session cancelled > due to an exit, and in a released version, this should be avoided. However, > the flip side is that if we continue to "gracefully recover", its going to be > a lot tougher to weed out the /root/ cause of any bug. For instance, there is > a good chance that the underlying error in the KSAN groundnetwork would not > yet have been fixed already if FlightGear hadn't exited on detecting the > error. In my opinion, letting errors accumulate is not compatible with > the "doing things right" mentality of FlightGear.
Warning: the following is completely tangential. Although it is frequently argued that software should be made 100% correct and anything short of that should go down in an error-spouting blaze of glory, that is not a universal opinion. In particular, the people at Ericsson have found over the past two decades that a nearly opposite approach works better in their very large telephony applications, which need many-nines availability and robustness. I encourage anyone with even a passing interest in how to make software easier to develop *and* more robust and reliable, to look into the erlang error handling model. It's not directly applicable to C++, but I think the throw an exception which is caught, logged, and recovered from (as discussed in this thread) is a good approximation. In a few words, the erlang model is code for the normal case and crash if something goes amiss, but each process in erlang is supervised and restarted when it crashes (after being logged, etc.) - so at its heart it's a form of graceful recovery. ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel