...
IgniteConfiguration have to be extended with methods
IgniteConfiguration setIgniteFailureHandler(IgniteFailureHandler igniteFailureHnd)
IgniteFailureHandler getIgniteFailureHandler()
Where
interface IgniteFailureHandler {
IgniteFailureAction onFailure(IgniteFailureContext failureCtx);
}
class IgniteFailureContext {
IgniteFailureType type;
Throwable cause;
}
enum IgniteFailureAction {
RESTART_JVM,
STOP,
NOOP;
}
enum IgniteFailureType {
SEGMENTATION,
SYSTEM_WORKER_CRASHED,
CRITICAL_ERROR
}
So, provided by user subclass of IgniteFailureHandler able to decide what to do (see. IgniteFailureAction) on each registered failure (see. IgniteFailureContext).
// Describe project risks, such as API or binary compatibility issues, major protocol changes, etc.
...