[jira] [Updated] (KAFKA-9583) OffsetsForLeaderEpoch requests are sometimes not sent to the leader of partition

2020-02-20 Thread Andy Fang (Jira)


 [ 
https://issues.apache.org/jira/browse/KAFKA-9583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andy Fang updated KAFKA-9583:
-
Description: 
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, 

  was:
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.


> 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
>   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, 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (KAFKA-9583) OffsetsForLeaderEpoch requests are sometimes not sent to the leader of partition

2020-02-20 Thread Andy Fang (Jira)


 [ 
https://issues.apache.org/jira/browse/KAFKA-9583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andy Fang updated KAFKA-9583:
-
Description: 
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.

  was:
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,] that fixes 
this issue.


> 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
>   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)


[jira] [Updated] (KAFKA-9583) OffsetsForLeaderEpoch requests are sometimes not sent to the leader of partition

2020-02-20 Thread Andy Fang (Jira)


 [ 
https://issues.apache.org/jira/browse/KAFKA-9583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andy Fang updated KAFKA-9583:
-
Description: 
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,] that fixes 
this issue.

  was:
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, 


> 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
>   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,] that 
> fixes this issue.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (KAFKA-9583) OffsetsForLeaderEpoch requests are sometimes not sent to the leader of partition

2020-02-20 Thread Andy Fang (Jira)
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)