Search code examples
node.jsapache-kafkakafka-producer-api

node rd kafka repeats delivery reports from beginning for each message


delivery-report event gets called each time for every message produced and keep giving delivery reports from beginning. For ex, we will get delivery report with offset 1 for first message. For second message, we will get two delivery reports with offset 2. For third, we will get 3 delivery message with offset 3 and so on.

producer.on('delivery-report', function (err, report) {

   console.log("delivery report received");
   console.log('delivery-report: ' + JSON.stringify(report));

});

Solution

  • For delivery-report event there is a once binding which delivers only one delivery report for each message.

    producer.once('delivery-report', function (err, report) {
    
       console.log("delivery report received");
       console.log('delivery-report: ' + JSON.stringify(report));
    
    });