That shouldn't be possible. The sequence is: (1) ideal state change, (2) controller detects change and sends messages, (3) each node applies messages, invokes the state transition handler, and when the handler returns, updates its current state, (4) the controller sees the change in current state and updates the external view.
The external view and ideal state may not always match, but the controller will send messages to nodes such that the external view will eventually match within the constraints on the cluster. From: [email protected] To: [email protected] Subject: Question about helix state transition Date: Thu, 29 Oct 2015 13:17:23 +0800 hi, I deploy a cluster with helix. When I start a instance, helix will change EXTERNALVIEW before my service complete the transition function. is that right? I think helix can change EXTERNALVIEW after my service complete transition function successfully. how can I configure my helix. Next, I have a question about helix source code. I found helix just update IDEALSTATES when I call rebalance function. Then helix send a message and this message tell the cluster changes EXTERNALVIEW state to IDEALSTATES. Some time my cluster’s EXTERNALVIEW and IDEALSTATES are not same. Does helix can know this difference and do something. Thanks
