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>
Sun, 10 Nov 2024 13:27:08 +0000 (14:27 +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 385df67..7a4b5d1 100644 (file)
@@ -92,7 +92,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(),