ArangoDB 损坏的数据或索引

pgvzfuti  于 2022-12-09  发布在  Go
关注(0)|答案(1)|浏览(155)

我们最近注意到,我们的一个边缘集合引发了这些错误。卸载和重新加载索引的建议都没有帮助。
此错误日志引用的索引是ArangoDB自动创建的默认索引(_from,_to indexes),我无法控制。我想这可能解释了为什么索引卸载/加载建议不起作用。
与此同时,这不仅仅是一个烦恼,由于这个问题,某些查询不会产生我们期望的结果。
不幸的是,我找不到任何关于如何解决这个问题的建议,我想知道ArangoDB开发人员是否可以提出一个解决方案?

我指的错误日志

2020-04-10T03:44:10Z [1] ERROR [3acb3] {graphs} Could not extract indexed edge document, return 'null' instead. This is most likely a caching issue. Try: 'db.contributor_action.unload(); db.contributor_action.load()' in arangosh to fix this.
2020-04-10T03:44:10Z [1] ERROR [3acb3] {graphs} Could not extract indexed edge document, return 'null' instead. This is most likely a caching issue. Try: 'db.contributor_action.unload(); db.contributor_action.load()' in arangosh to fix this.
2020-04-10T03:44:10Z [1] ERROR [3acb3] {graphs} Could not extract indexed edge document, return 'null' instead. This is most likely a caching issue. Try: 'db.contributor_action.unload(); db.contributor_action.load()' in arangosh to fix this.
2020-04-10T03:44:10Z [1] ERROR [3acb3] {graphs} Could not extract indexed edge document, return 'null' instead. This is most likely a caching issue. Try: 'db.contributor_action.unload(); db.contributor_action.load()' in arangosh to fix this.
2020-04-10T03:44:10Z [1] ERROR [3acb3] {graphs} Could not extract indexed edge document, return 'null' instead. This is most likely a caching issue. Try: 'db.contributor_action.unload(); db.contributor_action.load()' in arangosh to fix this.

揭示问题的AQL示例

LET c1 = (
    FOR ca in contributor_action 
        COLLECT WITH COUNT INTO count 
    RETURN count
)[0]

LET c2 = (
    FOR ca in contributor_action
        FOR c IN contributor FILTER ca._from == c._id
    COLLECT WITH COUNT INTO count 
    RETURN count
)[0]

RETURN {c1, c2}

结果显示有索引和无索引的AQL执行之间的差异

{
    "c1": 1123421,
    "c2": 1121787
  }
a0zr77ik

a0zr77ik1#

对于那些有兴趣知道并寻找答案的人来说,这个问题可能与我的问题有关。https://github.com/arangodb/arangodb/issues/11303等待3. 6. 4版本确认。

相关问题