Support Article
RuntimeException on using DataSet-Execute to write data to Kafka
SA-90210
Summary
RuntimeException occurs when using the DataSet-Execute method to write data to Kafka.
Error Messages
Caused by: com.pega.dsm.dnode.api.BatchRecordException at com.pega.dsm.dnode.api.BatchRecordException$Builder.build(BatchRecordException.java:66) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.dataset.kafka.KafkaSaveOperation$2.emit(KafkaSaveOperation.java:198) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl$SafeDataSubscriber.subscribe(DataObservableImpl.java:335) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl.subscribe(DataObservableImpl.java:53) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl.await(DataObservableImpl.java:99) ~[dnode-7.3.1.jar:?] ... 75 more .
.
. at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) ~[com.ibm.ws.runtime.jar:?] at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) ~[com.ibm.ws.runtime.jar:?] at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) ~[com.ibm.ws.runtime.jar:?] at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) ~[com.ibm.ws.runtime.jar:?] at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909) ~[com.ibm.ws.runtime.jar:?] Caused by: com.pega.dsm.dnode.api.BatchRecordException at com.pega.dsm.dnode.api.BatchRecordException$Builder.build(BatchRecordException.java:66) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.dataset.kafka.KafkaSaveOperation$2.emit(KafkaSaveOperation.java:198) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl$SafeDataSubscriber.subscribe(DataObservableImpl.java:335) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl.subscribe(DataObservableImpl.java:53) ~[dnode-7.3.1.jar:?] at com.pega.dsm.dnode.impl.stream.DataObservableImpl.await(DataObservableImpl.java:99) ~[dnode-7.3.1.jar:?] ... 75 more
Steps to Reproduce
- Create a Kafka dataset.
- Perform a Property-Set for a few properties.
- Use the Dataset-Execute method to invoke the Kafka dataset.
Root Cause
A defect or configuration issue in the operating environment.
Pega was configured to connect to three Kafka brokers. However, the Replication factor for the Kafka topic was set to 1 which caused the error.
Resolution
Perform the following local-change:
Change the Replication factor of the Kafka Topic from 1 to 3.
Published October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.