You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Avi Youkhananov (Jira)" <ji...@apache.org> on 2021/05/24 11:09:00 UTC
[jira] [Created] (KAFKA-12841) NPE from the provided metadata in
client callback in case of ApiException
Avi Youkhananov created KAFKA-12841:
---------------------------------------
Summary: NPE from the provided metadata in client callback in case of ApiException
Key: KAFKA-12841
URL: https://issues.apache.org/jira/browse/KAFKA-12841
Project: Kafka
Issue Type: Bug
Components: clients
Affects Versions: 2.6.0
Environment: Prod
Reporter: Avi Youkhananov
Attachments: NPE.production
1.
org.apache.kafka.clients.producer.Callback interface has method onCompletion(...)
Which says as part of the documentation :
*The metadata for the record that was sent (i.e. the partition and offset). *An empty metadata with -1 value for all fields* except for topicPartition will be returned if an error occurred.
We got an NPE from doSend(...) method in org.apache.kafka.clients.producer.KafkaProducer
Which can occur in case ApiException was thrown ...
In case of ApiException it uses the regular callback instead of InterceptorCallback which also may cover the NPE.
2. More over RecordMetadata has method partition() which return int but can also throw NPE because TopicPartition might be null.
Stack trace attached.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)