4 ms·
I assume that bugs requiring reboots to resolve is part of the design of the failure model. When a software fault is detected, its consequences are unknowable.
by twoodfin 11y ago
I assume that bugs requiring reboots to resolve is part of the design of the failure model. When a software fault is detected, its consequences are unknowable. Those consequences could include killing the pilot and destroying his $100M aircraft. Therefore, the default response is to reset everything and get to a known-good state ASAP.
This is not a bad general-purpose failure strategy: It's been believed for decades that most software faults encountered in production are Heisenbugs[1], and disappear rather than reproduce.
[1] http://research.microsoft.com/en-us/um/people/gray/papers/TandemTR85.7_WhyDoComputersStop.pdf http://research.microsoft.com/en-us/um/people/gray/papers/Ta...
- macintux 11y agoIndeed. Hence Tandem's success with hardware and Erlang's with software. Crashing doesn't have to be crashing.