Ihar Reznichenka created CAMEL-20790:
----------------------------------------
Summary: kafka batching consumer polls randomly failing with NPE
under load
Key: CAMEL-20790
URL: https://issues.apache.org/jira/browse/CAMEL-20790
Project: Camel
Issue Type: Bug
Components: camel-kafka
Affects Versions: 4.6.0, 4.4.2
Reporter: Ihar Reznichenka
Attachments: KafkaBatchingProcessingManualCommitExchangeListNPEIT.java
A camel-kafka batching consumer is randomly catching NPEs.
This is happening with and w/o manual commit.
If the consumer is configured with pollOnError=RETRY then it causes lost
records.
Please find a test to reproduce the issue attached.
{code:java}
java.lang.NullPointerException: Cannot invoke "java.util.List.add(Object)"
because "this.exchangeList" is null
at
org.apache.camel.component.kafka.consumer.support.batching.KafkaRecordBatchingProcessor.processExchange(KafkaRecordBatchingProcessor.java:137)
at
org.apache.camel.component.kafka.consumer.support.batching.KafkaRecordBatchingProcessorFacade.processPolledRecords(KafkaRecordBatchingProcessorFacade.java:59)
at
org.apache.camel.component.kafka.KafkaFetchRecords.startPolling(KafkaFetchRecords.java:353)
at
org.apache.camel.component.kafka.KafkaFetchRecords.run(KafkaFetchRecords.java:173)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at
java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840) {code}
Please let me know if any additional details are required here.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)