我在本地计算机(使用brew
)和远程计算机(使用Docker)上设置了Neo4j实例(3.2)。我正在尝试运行查询,我使用py2neo
函数(merge
关系)自动创建Cypher。
我定义了两个Node
个对象,一个用于subject
和object
个标签,其中entity
作为两者的属性。我在下面的查询中创建了一个Relationship
对象,其关系类型为is cheaper according to
,并为此关系类型添加了一个名为confidence
的属性。这是我正在尝试运行的查询:
MERGE (a0:subject {entity:"VSS"})
SET a0:subject
MERGE (a1:object {entity:"Vanguard"})
SET a1:object
MERGE (a0)-[r0:`is cheaper according to`]->(a1)
SET r0.confidence="1.0"
RETURN a1, a0, r0 LIMIT 1
此查询在我的本地Neo4j上运行正常,但在遥控器上,我收到以下错误:
bolt.fetch S: FAILURE {u'message': u'Could not create token', u'code': u'Neo.DatabaseError.General.UnknownError'}
我也试过直接在浏览器客户端运行上面的查询,并且有相同的响应,即。它适用于我当地的Neo4j但不适用于我的遥控器。
此外,如果我用is cheaper according to
替换关系类型is cheaper
,则查询在我的本地和远程Neo4j中都会失败。
我对两者的Neo4j的设置是相同的,非常香草。我在subject
和object
节点上都有两个索引。
我找不到任何支持远程本地v / s上的不同行为的东西,我当然看不出为什么更改关系类型会失败的原因。这里有什么我想念的吗?
真的很感谢帮助,谢谢!