@Override
    public T get() throws InterruptedException, ExecutionException {
        latch.await();
        if (error != null) {
            throw new ExecutionException(error);
        }
        return result;
    }
Gets the error that was thrown during RPC execution. Does not block. Either {@link #get()} or
{@link #get(long, java.util.concurrent.TimeUnit)} should be called first because these methods
block until the RPC has completed.

@return the RPC error that was thrown,
        or null if no error has occurred or if the RPC has not yet completed.
inlong-tubemq/tubemq-core/src/main/java/org/apache/inlong/tubemq/corerpc/client/CallFuture.java