jackjlli commented on issue #4972: Changing the rebalance strategy from Crush 
to AutoRebalance for contr…
URL: https://github.com/apache/incubator-pinot/pull/4972#issuecomment-573472545
 
 
   Affinity is needed when controller's workload is distributed to multiple 
controllers. 
   E.g. suppose the leader of Partition X is host_1. After restarting host_1, 
we don't want the leader of partition X gets changed to other controller hosts 
after host_1 has been fully restarted; we want host_1 to always be the leader 
of Partition X. This can reduce the change of leadership change in the whole 
Pinot cluster. And crushED algorithm provides us this guarantee:
   http://helix.apache.org/0.8.4-docs/design_crushed.html
   
   0.9.2 will also touch that exception, but it only prints a one-line message 
instead of the whole stack trace. Thus, the log will be clean. And the message 
will not longer appear after the first controller is fully prepared.
   
   The goal of leadControllerResource is to make sure there is at most 1 host 
in Master state within any partitions. OnlineOffline cannot guarantee that. 
E.g. if OnlineOffline state model is used, when a host gets restarted, it's 
possible that a state transition from offline to online gets triggered before 
the state transition from online to offline does, which leads to a scenario 
that there are two hosts in Online state, which is harmful to realtime segment 
completion.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to