Github user kishoreg commented on the issue:

    https://github.com/apache/helix/pull/58
  
    This should fix it. One scenario, where this will result in undesirable 
output is when the entire cluster is restarted.
    
    Let's day P was on NODE_0 and NODE_1, we paused the controller, restarted 
all nodes and unpaused controller. It's desirable to put P on the same nodes 
(NODE_0, NODE_1), but since we remove it from the map, it might reassign it to 
another node and this will cause a lot of reshuffling.
    
    Another alternative is to keep the current code but during sorting use the 
state priority followed by node names. With this change  currentMapping: `{P: 
{NODE_0: OFFLINE, NODE_1: ONLINE}}` after sorting should result in `[NODE_1, 
NODE_0]` and hence no movement.
    
    
    
    
    



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to