-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MATCH will hang in certain cases #205
Comments
这个截图说的是上次执行之后,卡住的执行过程没有日志是吧 |
是的是的 |
换这条语句也会卡住 但是换成这条好像就不会卡住 区别就是(n)-[r:transfer]->(n2) 和 (n)-[r: ${ p1 }]-(n2) |
难道是这个箭头的原因吗 |
这些信息是有点难分析出是哪里出的问题,是数据上还是程序上 |
如果是语法上的差异可以明确重现会不会卡住,可以将两个脚本分别在studio/console中执行下看看 |
我描述一下我的场景: |
然后那个卡顿的点是在1这里 |
数据量很大吗,selectTransfer 跟 NebulaDaoBasic 的区别也是差一个箭头的问题 |
是滴是滴,数据量不算大,现在我是要判断左边点向右边点是否有转账,但是existsEdge好像并不能判断单边的 |
我换成->的查询就卡住,不过不是第一次就卡住,而是过了一定次数就会卡住,然后换成-就不会卡住,刚刚又试了一下 |
是个很诡异的问题,SHOW LOCAL QUERIES; 能查到卡住的查询吗 |
那 SHOW QUERIES; 呢 |
目前我也没办法定位具体是哪个环节卡住了 |
这个用例可以试试线上跑测试库,或者本地连正式库?(不知道你们能不能允许这种操作)排除一下跟数据库数据状态的影响 |
试了,还是一样的,so sad |
那这就跟数据库没有关系,这样上面的show没有结果也就解释得通了,但这个箭头跟非箭头的区别反而解释不通了,只有数据库才会涉及语义,对于其他环节只是长度差1的字符串,so sad... |
这边有回复了,看样子 SHOW QUERIES 没结果可以说明没在数据库查询中卡住,这就不好排查了 |
好吧,谢谢,我试试 |
查询语句:
MATCH (n)-[r:transfer]->(n2)
WHERE id(n) == $p0 AND id(n2) == $p1
RETURN r
本地执行没问题,到服务器上跑的时候,执行到一定查询次数就会卡住不动了,也没有日志提示
The text was updated successfully, but these errors were encountered: