Fix: Nachrichten wurden ggf. doppelt verarbeitet
authorKai Moritz <kai@juplo.de>
Mon, 28 Oct 2024 10:14:31 +0000 (11:14 +0100)
committerKai Moritz <kai@juplo.de>
Sat, 2 Nov 2024 08:43:13 +0000 (09:43 +0100)
* Wenn man in einer Schliefe die Nachrichten pro Partition separat
  verarbeitet...
* ...dann sollte man in jedem Schleifendurchlauf auch nur die Nachrichten
  der gerade zu verarbeitenden Partition abrufen!

src/main/java/de/juplo/kafka/ExampleConsumer.java

index d845138..b5845ca 100644 (file)
@@ -88,7 +88,7 @@ public class ExampleConsumer implements Runnable, ConsumerRebalanceListener
             acked[partition.partition()] = 0;
             done[partition.partition()] = false;
 
-            for (ConsumerRecord<String, String> record : records)
+            for (ConsumerRecord<String, String> record : records.records(partition))
             {
               handleRecord(
                 record.topic(),