发现了个find_path的问题

提问参考模版:

  • nebula 版本:3.6
  • 部署方式:分布式
  • 安装方式: RPM
  • 是否上生产环境:Y


假如在路径探寻中加入BEE和BEER边的话,没有数据


去掉这两种类型的边的话便有数据,

现在问题是为什么加上两个边以后第二张图的两个路径便没了呢,我觉得肯定应该还在才对呀,这块的逻辑想不明白了,求大佬解答

这两个边类型在数据库里面是存在的

帮忙profile一下,贴出来看一下,现在先排除一下前端显示的问题


大佬麻烦看一下

查了一下日志也没有因为节点探寻节点过多报错@jmq2020

把profile文件 上传上来吧

result.csv (9.3 KB)

@jmq2020

顶一下

顶一下

突然想了一下不会是暴力截断导致的吧max_edge_returned_per_vertex

1 个赞

我在本地测试了一下,没有发现这个问题,你可以把max_edge_returned_per_vertex 去掉,然后方便的话,把你的数据脱敏 发一下,我验证一下

嗯呢,我也是在本地伪随机了些数据测试发现并没有复现出问题才提问的,因为实在想不来这块返不回数是啥逻辑,今晚我重启下星图服务看一下是不是这个参数的问题,如果解决不了我再导一份数据出来测试一下,提前感谢

嗯,经过测试确实是这个问题导致的,BEE边数量过多导致底层路径探索的时候没访问到可以关联的路径就被截断了?我能想到的解释就是这样,但这似乎不太合理呀,不论是go还是lookup检索都是在返回截断数量的结果,同理find_path也应该返回截断数量相等的路径才可以,这块的逻辑感觉有点问题 :thinking:

1 个赞

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。