Neo4j索引bug?

时间:2014-11-05 14:28:29

标签: indexing neo4j

asking about Neo4j caches之后,没有明确的解决方案,我一直在测试Neo4j作为我们可能在生产中使用的数据库。但是,我现在面临着使用特定标签索引属性的新问题。

事情是,如果我通过标签和属性(意外地具有相同名称)请求节点,Neo4j无法获得正确的数据。我已经拍摄了一些正在发生的事情的屏幕截图,希望有助于理解我推断出的可能是一个错误的方式。这是两个不同标签发生的两个例子:

enter image description here

我标有 A 标签 B ,属性 a b 。如果您从下到上阅读,您可以看到我正在执行以下步骤:

  1. 我请求属性为 a (无标签)< - works
  2. 的节点
  3. 我请求标签为 A 且属性 a < - 不起作用(使用索引)的节点
  4. 我请求标签为 A 且属性 b < - works
  5. 的节点
  6. 我请求标签为 B 且属性 a < - works
  7. 的节点
  8. 我请求标签为 B 且属性 b < - works(使用索引)
  9. 的节点

    我还在我的请求中添加了额外的列(它们没有影响力)来检查两列是否具有相同的值,还检查标签。

    仅当使用具有相同名称的标签对属性编制索引时,才会出现此问题。这意味着,标记 A 和属性 a 。但是,标签 B 和属性 b 不会发生这种情况。至少现在不是这个时候了,因为用其他标签复制相同的场景属性名称(遵循规则 A ... a )会导致同样的问题。

    我不需要说外面没有影响,所以我完全可以控制数据库中发生的事情。

    修改

    enter image description here

1 个答案:

答案 0 :(得分:1)

你的#1没有真正"工作",因为你应该得到(至少)2行(每个标签一行)。

在RETURN语句中,应包括id(n),以便查看正在返回的节点。现在,目前尚不清楚。

EDITED

好的,如果列出了ID,现在很清楚我们正在讨论具有多个标签的单个节点。所以,这肯定是一个奇怪的错误。如果您在最新版本中看到这一点,您应该考虑在github.com/neo4j/neo4j/issues上为此创建一个问题。

相关问题