junrao commented on a change in pull request #11470: URL: https://github.com/apache/kafka/pull/11470#discussion_r745176383
########## File path: clients/src/main/java/org/apache/kafka/clients/producer/Callback.java ########## @@ -25,10 +25,12 @@ /** * A callback method the user can implement to provide asynchronous handling of request completion. This method will * be called when the record sent to the server has been acknowledged. When exception is not null in the callback, - * metadata will contain the special -1 value for all fields except for topicPartition, which will be valid. + * and the exception is a subclass of ApiException, metadata will be null. For all other exceptions, metadata will Review comment: @soceanainn : Thanks for the comment. You are right. It seems that we are generating metadata inconsistently. It seems that if the send() call throws an ApiException, we return a null metadata. Otherwise, the callback will always get a placeholder metadata when exception is not null, even if the exception is of ApiException. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org