Neo4j cql ведет себя по-разному в Windows и Linux

Я создал следующее отношение в Nodejs.

CREATE (s1:service {name:'service A'})
CREATE (s2:service {name:'service B'})
CREATE (s3:service {name:'service C'})

MATCH (s1:service {name:'service A'}),(s2:service {name:'service B'}),(s3:service {name:'service C'})
MERGE (s1)-[:calls]->(s2)
MERGE (s1)-[:invokes]->(s3)
MERGE (s2)-[:calls]->(s3)

И когда я запускаю после cql в Windows, я получаю график, как показано ниже, который ожидается.

MATCH p=(:service)-[:calls]->(:service)-[:calls]->(:service) return p

введите описание изображения здесь

И для того же самого запроса cql neo4j в linux возвращает другой граф, в котором отношение "вызывает" не ожидается.

введите описание изображения здесь

Я не мог найти большую помощь из документации, относящейся к этому. Может кто-нибудь помочь по этому вопросу?

1 ответ

Решение

Это может быть связано только с разницей в настройках браузера neo4j, используемых для просмотра результатов 2 запросов.

Когда включен режим автозаполнения, браузер neo4j покажет все отношения между возвращенными узлами - даже отношения, которые ваш Cypher-запрос не возвратил. (Если вы просматриваете текстовый результат вместо графического, вы должны увидеть ожидаемые результаты.)

Чтобы проверить, включен ли этот параметр, введите эту команду в браузере neo4j, который вы используете для Linux:

:config

Если возвращенная карта содержит "autoComplete": trueВы можете отключить эту настройку, введя эту команду:

:config autoComplete:false

После отключения режима "автозаполнение" повторите запрос. Визуализация графика больше не должна показывать дополнительные отношения.

Другие вопросы по тегам