使用apoc.path.subgraphAll进行密码查询,似乎限制配置无法正常工作

时间:2018-03-05 14:58:52

标签: neo4j neo4j-apoc cypher-3.1

我正在执行以下查询:

MATCH (e:COMP) WHERE e.componentID= "f4db22e7-68d2-473d-960b-c98dbbadb3a0" 
with e limit 1 CALL apoc.path.subgraphAll(e, 
{relationshipFilter:'CHILD_OF|CONNECTED_TO|LINKED_TO', limit:10}) YIELD nodes 
UNWIND nodes as node  RETURN node.componentID as uuid, node.orphanID as oid, 
node.cTime as time

我原以为我会得到10行但是我的行数超过300行。不确定我在这里遗失了什么?

实际上,在我的图表中,可能有100,000个与这些关系相关的节点(CHILD_OF,CONNECTED_TO,LINKED_TO)。在这种情况下,我只想将结果限制为1000.

1 个答案:

答案 0 :(得分:1)

在neo4j-users上解决这个问题。

这是在APOC 3.2.3.5中执行的,其中limit配置参数仅在使用端节点或终结器节点过滤器labelFilter时使用。这在之前版本的文档中已经注明。

APOC 3.2.3.6(及3.3.0.2)limit现在适用于所有情况,无论使用何种过滤器,甚至不使用标签过滤器。

虽然引用限制的文档中的行已使用最新版本删除,但这还不够。需要将更改本身(以及更改之前的行为)添加到文档中。