[ https://issues.apache.org/jira/browse/KAFKA-9583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jason Gustafson resolved KAFKA-9583. ------------------------------------ Resolution: Fixed > 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.4.0, 2.3.1 > Reporter: Andy Fang > Priority: Minor > Labels: newbie, patch, pull-request-available > Fix For: 2.6.0, 2.5.1 > > Original Estimate: 24h > Remaining Estimate: 24h > > 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. > I have submitted a PR, > [https://github.com/apache/kafka/pull/8077|https://github.com/apache/kafka/pull/8077], > that fixes this issue. -- This message was sent by Atlassian Jira (v8.3.4#803005)