lianetm commented on code in PR #15275:
URL: https://github.com/apache/kafka/pull/15275#discussion_r1478904746


##########
clients/src/main/java/org/apache/kafka/clients/consumer/internals/MembershipManagerImpl.java:
##########
@@ -929,6 +938,9 @@ private void revokeAndAssign(SortedSet<TopicIdPartition> 
assignedTopicIdPartitio
                     String reason = interruptedReconciliationErrorMessage();
                     log.error("Interrupting reconciliation after partitions 
assigned callback " +
                         "completed. " + reason);
+                    if (memberHasRejoined) {
+                        attemptReconciliation = true;

Review Comment:
   I guess this is trying to trigger a reconciliation if a member rejoins with 
the same assignment it was stuck reconciling? I would say we don't need to 
involve this new condition to reconcile here, and could simply let the 
`reconcile()` decide if it needs to reconcile when called on poll. We do need 
to fix the underlying problem, which is that we are discarding the 
reconciliation when a member rejoins with the same assignment 
([KAFKA-16185](https://issues.apache.org/jira/browse/KAFKA-16185) to come in 
another PR). Once we got that right, I expect the reconciliation of the target 
received after rejoining would happen on poll if the target changed, or be 
reused when reconciliation completes, if the target is the same.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to