-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Closed
Milestone
Description
In what version(s) of Spring for Apache Kafka are you seeing this issue?
3.2.4
Describe the bug
When we updated Spring Boot to latest RELEASE version we started to get NullPointerException
from our listener.
I am unable to find out what triggered this, but is happening when there is in ConsumerRecord
some RecordHeader
with null
value.
This is probably bug in our custom application, but I think Spring Kafka header mapper should handle such cases in better way other than to throw NPE.
Caused by: java.lang.NullPointerException: Cannot read the array length because "bytes" is null
at java.base/java.lang.String.<init>(String.java:1425)
at org.springframework.kafka.support.AbstractKafkaHeaderMapper.mapRawIn(AbstractKafkaHeaderMapper.java:281)
at org.springframework.kafka.support.AbstractKafkaHeaderMapper.headerValueToAddIn(AbstractKafkaHeaderMapper.java:270)
at org.springframework.kafka.support.DefaultKafkaHeaderMapper.lambda$toHeaders$2(DefaultKafkaHeaderMapper.java:328)
at java.base/java.lang.Iterable.forEach(Iterable.java:75)
at org.springframework.kafka.support.DefaultKafkaHeaderMapper.toHeaders(DefaultKafkaHeaderMapper.java:310)
at org.springframework.kafka.support.converter.MessagingMessageConverter.mapOrAddHeaders(MessagingMessageConverter.java:206)
at org.springframework.kafka.support.converter.MessagingMessageConverter.toMessage(MessagingMessageConverter.java:184)
at org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.toMessagingMessage(MessagingMessageListenerAdapter.java:377)
at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:77)
at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.onMessage(RecordMessagingMessageListenerAdapter.java:50)
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeOnMessage(KafkaMessageListenerContainer.java:2800)
... 13 common frames omitted