@Override
        public void onCompletion(RecordMetadata metadata, Exception exception) {
            if (metadata == null) {
                metadata = new RecordMetadata(topicPartition(), -1, -1, RecordBatch.NO_TIMESTAMP, -1, -1);
            }
            this.interceptors.onAcknowledgement(metadata, exception);
            if (this.userCallback != null)
                this.userCallback.onCompletion(metadata, exception);
        }
Callbacks that are called by the RecordAccumulator append functions:
 - user callback
 - interceptor callbacks
 - partition callback
clients/src/main/java/org/apache/kafka/clients/producer/KafkaProducer.java