损坏的数据或索引

问题描述 投票:0回答:1

我们最近注意到我们的一个边缘集合被抛出了这些错误.卸载和加载索引的建议都没有帮助。

这个错误日志引用的索引是ArangoDB自动创建的默认索引(_from,_to索引),我无法控制。我想这也许可以解释为什么索引卸载建议没有用。

同时,这不仅仅是一个烦恼,由于这个问题,某些查询不会产生我们期望的结果。

不幸的是,我找不到任何关于如何解决这个问题的建议,我想知道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
  }
arangodb
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.