Andy Fang created KAFKA-9583: -------------------------------- Summary: OffsetsForLeaderEpoch requests are sometimes not sent to the leader of partition Key: KAFKA-9583 URL: https://issues.apache.org/jira/browse/KAFKA-9583 Project: Kafka Issue Type: Bug Components: clients Affects Versions: 2.3.1, 2.4.0 Reporter: Andy Fang
In [{{validateOffsetsAsync}}|https://github.com/apache/kafka/blob/2.3.1/clients/src/main/java/org/apache/kafka/clients/consumer/internals/Fetcher.java#L737], we group the requests by leader node for efficiency. The list of topic-partitions are grouped from {{partitionsToValidate}} (all partitions) to {{node}} => [{{fetchPostitions}} (partitions by node)|https://github.com/apache/kafka/blob/2.3.1/clients/src/main/java/org/apache/kafka/clients/consumer/internals/Fetcher.java#L739]. However, when actually sending the request with {{OffsetsForLeaderEpochClient}}, we use [{{partitionsToValidate}}|https://github.com/apache/kafka/blob/2.3.1/clients/src/main/java/org/apache/kafka/clients/consumer/internals/Fetcher.java#L765], which is the list of all topic-partitions passed into {{validateOffsetsAsync}}. This results in extra partitions being included in the request sent to brokers that are potentially not the leader for those partitions. -- This message was sent by Atlassian Jira (v8.3.4#803005)