jsancio commented on PR #22620:
URL: https://github.com/apache/kafka/pull/22620#issuecomment-4791103328

   > * What is the goal of `UPDATE_VOTER` in static quorum? To me, ideally, 
before upgrading to kraft.version=1, we want the leader's stored endpoints of 
all nodes to be no worse than the "routability" state of the cluster with each 
node's `controller.quorum.voters` in kraft.version=0. I think it is impractical 
to validate that from each node, so we choose the leader as the one to "gather 
endpoints," and with this API_VERSIONS change, we at least know, these 
endpoints are routable from me (the static leader).
   
   For the leader to write a kraft version 1 and voter set to the log it needs 
to know all of the information encoded in the voter set. This includes:
   1. voter's id
   2. voter's directory id
   3. voter's supported kraft versions
   4. all of the voter's listeners
   
   This information is not available in the controller.quorum.voters 
properties. The leader needs to discover it from the voters by using the 
UPDATE_VOTER RPC.


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