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


##########
clients/src/main/java/org/apache/kafka/clients/consumer/internals/MembershipManagerImpl.java:
##########
@@ -1392,4 +1402,16 @@ public void registerStateListener(MemberStateListener 
listener) {
         }
         this.stateUpdatesListeners.add(listener);
     }
+
+    /**
+     * If either a new target assignment or new metadata is available that we 
have not yet attempted
+     * to reconcile, and we are currently in state RECONCILING, trigger 
reconciliation.
+     */
+    @Override
+    public PollResult poll(final long currentTimeMs) {
+        if (state == MemberState.RECONCILING && attemptReconciliation) {
+            reconcile();

Review Comment:
   Got it. But if we completely move away from triggers (so remove 
`attemptReconciliation` boolean in this change) and re-attempt reconciliation 
in every poll, we'd stay in a reconciliation loop as long as topic metadata is 
missing. Do we know that missing target IDs are always resolved in a relatively 
short amount of time? Otherwise, we'd need a back-off mechanism.



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