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                                    

Reply via email to