[
https://issues.apache.org/jira/browse/KAFKA-16816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17888479#comment-17888479
]
TaiJuWu commented on KAFKA-16816:
---------------------------------
Hi[~lianetm] ,
if you are not working on this, may I pick it up?
> Remove unneeded FencedInstanceId support on commit path for new consumer
> ------------------------------------------------------------------------
>
> Key: KAFKA-16816
> URL: https://issues.apache.org/jira/browse/KAFKA-16816
> Project: Kafka
> Issue Type: Task
> Components: clients, consumer
> Reporter: Lianet Magrans
> Priority: Minor
> Labels: kip-848-client-support
> Fix For: 4.0.0
>
>
> The new consumer contains logic related to handling FencedInstanceId
> exception received as a response to an OffsetCommit request (on the
> [consumer|https://github.com/apache/kafka/blob/028e7a06dcdca7d4dbeae83f2fce0a4120cc2753/clients/src/main/java/org/apache/kafka/clients/consumer/internals/AsyncKafkaConsumer.java#L776]
> and [commit
> manager|https://github.com/apache/kafka/blob/028e7a06dcdca7d4dbeae83f2fce0a4120cc2753/clients/src/main/java/org/apache/kafka/clients/consumer/internals/CommitRequestManager.java#L715]),
> but with the new group protocol, we will never get that error on a commit
> response. We should remove the code that expects the FencedInstanceId on the
> commit response, and also clean up the other related usages that we added to
> propagate the FencedInstanceId exception on the poll, commitSync and
> commitAsync API. Note that throwing that exception is part of the contract of
> the poll, commitSync and commitAsync APIs of the KafkaConsumer, but it
> changes with the new protocol. We should update the java doc for the new
> AsyncKafkaConsumer to reflect the change.
>
> With the new protocol If a consumer tries to commit offsets, there could be 2
> cases:
> # empty group -> commit succeeds, fencing an instance id would never happen
> because group is empty
> # non-empty group -> commit fails with UnknownMemberId, indicating that the
> member is not known to the group. The consumer needs to join the non-empty
> group in order to commit offsets to it. To complete the story, the moment the
> consumer attempts to join, it will receive an UnreleasedInstanceId error on
> the HB response, indicating it using a groupInstanceId that is already in use.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)