protected synchronized void maybeThrowFatalException() {
        KafkaException metadataException = this.fatalException;
        if (metadataException != null) {
            fatalException = null;
            throw metadataException;
        }
    }
If any fatal exceptions were encountered during metadata update, throw the exception. This is used by
the producer to abort waiting for metadata if there were fatal exceptions (e.g. authentication failures)
in the last metadata update.
clients/src/main/java/org/apache/kafka/clients/Metadata.java