@ Override protected < T > CompletableFuture < T > doExecute ( Command < T > command ) throws Exception { final CompletableFuture < T > future = new CompletableFuture <> ( ) ; executor . execute ( ( ) -> { try { future . complete ( blockingExecute ( command ) ) ; } catch ( Throwable t ) { future . completeExceptionally ( t ) ; } } ) ; return future ; }
Ensure that all logs are replayed any other logs can not be added before end of this function .