Neo4J Cluster - Болт + Маршрутизация
Документ Neo4j говорит, что мы можем использовать болт + маршрутизацию, когда мы используем режим / настройку кластера. Я могу использовать один узел с болтовым соединением без каких-либо проблем, но если я использую режим кластера / настройки, это дает мне следующую ошибку.
Caused by: org.neo4j.driver.v1.exceptions.ClientException: 'bolt+routing' is not a supported transport (in 'bolt+routing://username:password@server.com:7687', available transports are: [bolt].
В режиме кластера, если я просто использую bolt+routing://username:password@server.com:7687
Я получаю NotALeader Error, как показано ниже config.Neo4jConfiguration: Intercepted exception
Exception in thread "main" org.neo4j.ogm.exception.CypherException: Error executing Cypher: Neo.ClientError.Cluster.NotALeader
at org.neo4j.ogm.drivers.bolt.transaction.BoltTransaction.commit(BoltTransaction.java:75)
Примечание. Я использую Spring Data Neo4j для своего приложения.
2 ответа
В документе говорится, что "адрес в URI должен быть адресом главного сервера". Вы можете установить свой элемент кластера как ядро с этой конфигурацией в neo4j.conf:
dbms.mode=CORE
И в браузере вы можете проверить роли членов:
CALL dbms.cluster.role()
Версия драйвера болта OGM (neo4j-ogm-bolt-driver) должна быть 2.1.0
Ссылка на Spring SDN Doc помогает решить проблему.