2016-01-22 76 views
3

升級到2.3.2後,啓動集羣時出現以下錯誤。Neo4j 2.3.2由於未知複製策略而無法啓動集羣

開始在2.3.2升級和Neo4j的集羣得到這個無法啓動:

2016-01-22 00:54:42.499+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component '[email protected]' was successfully initialized, but failed to start. Please see attached cause exception. Starting Neo4j failed: Component 
Caused by: java.lang.RuntimeException: Unknown replication strategy 
at org.neo4j.kernel.ha.transaction.TransactionPropagator$1.getReplicationStrategy(TransactionPropagator.java:115) 
at org.neo4j.kernel.ha.transaction.TransactionPropagator.start(TransactionPropagator.java:175) 
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:452) 
... 14 more 

回答

3

這個問題似乎涉及到的conf/neo4j.properties的ha.tx_push_strategy設置進行更新。在ha.tx_push_strategy = fixed處設置此錯誤。當選擇更具體的策略,即ha.tx_push_strategy = fixed_ascending時,錯誤消失,羣集形成正確。

推送策略確定一個聯絡斷路器,其中如果tx ids是相同的,哪個服務器id被推送到下一個。新策略是fixed_descending和fixed_ascending。雖然fixed_descending的默認值是此版本的默認值,但fixed_ascending是更好的選擇,因爲選擇策略在確定選擇哪個實例作爲下一個主控時使用升序。因此,使用fixed_ascending可以減少在某些情況下分支數據的機會。