You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Evan Zhou (Jira)" <ji...@apache.org> on 2026/06/03 19:50:00 UTC
[jira] [Created] (KAFKA-20660) Add guardrail to detect use of legacy ConsumerRecords constructor via nextOffsets()
Evan Zhou created KAFKA-20660:
---------------------------------
Summary: Add guardrail to detect use of legacy ConsumerRecords constructor via nextOffsets()
Key: KAFKA-20660
URL: https://issues.apache.org/jira/browse/KAFKA-20660
Project: Kafka
Issue Type: Task
Components: clients
Reporter: Evan Zhou
Assignee: Evan Zhou
Fix For: 4.1.3, 4.0.3, 4.3.1, 4.4.0, 4.2.2
KIP-1094 added a nextOffsets map to ConsumerRecords and deprecated the old ConsumerRecords(Map) constructor. From Kafka Streams 4.0, StreamThread relies on ConsumerRecords#nextOffsets() to advance committed offsets. Any consumer interceptor or wrapper that still constructs ConsumerRecords with the legacy constructor silently returns an empty nextOffsets map. For those partitions, Streams processes the records but never commits them, so under EOS the records are reprocessed after a restart.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)