jsancio commented on code in PR #21619:
URL: https://github.com/apache/kafka/pull/21619#discussion_r2879758269


##########
core/src/main/scala/kafka/server/ControllerRegistrationManager.scala:
##########
@@ -267,6 +267,7 @@ class ControllerRegistrationManager(
     }
 
     override def onTimeout(): Unit = {
+      pendingRpc = false

Review Comment:
   Thanks for the fixing this @kevin-wu24 . I have a couple of questions and 
observations:
   1. It looks like this timeout function is called if the request timed out 
before the address for the leader is known. It is guaranteed to not be sent to 
the active controller.
   
   2. There are other timeouts in the `NetworkClient` that close the 
connection. That means that those timeouts guarantee not to receive a response. 
Can we confirm this? It is possible for the active controller to receive 
multiple registration requests for the same incarnation. How does the 
controller handle that case? Are the idempotent?



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to