2016-01-22 51 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可以减少在某些情况下分支数据的机会。