static void setCriticalError(final KVStoreClosure closure, final String message, final Throwable error) {
        // Will call closure#run in FSMCaller
        setClosureError(closure);
        if (error != null) {
            throw new StorageException(message, error);
        }
    }
Sets critical error and halt the state machine.

If current node is a leader, first reply to client
failure response.

@param closure callback
@param message error message
@param error   critical error
jraft-rheakv/rheakv-core/src/main/java/com/alipay/sofa/jraft/rhea/storage/BaseRawKVStore.java