neo4j中的死锁异常

neo4j中的死锁异常,neo4j,Neo4j,因此,在尝试将数据导入新数据库时,我遇到了大量死锁异常,我想知道如何避免这些异常,以及哪些阈值会导致这些死锁 导入脚本调用REST批处理API来添加跟随者,并在单个批处理中为每个节点添加所有followers关系 START left=node:node_auto_index(uname={from}), right=node:node_auto_index(uname={to}) CREATE left-[r:FOLLOWS]->right 我正在2200个节点上创建5340个关系。

因此,在尝试将数据导入新数据库时,我遇到了大量死锁异常,我想知道如何避免这些异常,以及哪些阈值会导致这些死锁

导入脚本调用REST批处理API来添加跟随者,并在单个批处理中为每个节点添加所有followers关系

START left=node:node_auto_index(uname={from}), 
right=node:node_auto_index(uname={to})
CREATE left-[r:FOLLOWS]->right
我正在2200个节点上创建5340个关系。大多数节点仅跟随少数其他节点,但一些活动节点跟随大约一百个其他节点

我认为死锁发生是因为我试图在一个批中批量插入特定节点的所有关系。它是否因为封装在批处理api事务中而死锁?如果我把它从批次中取出,它不会死锁吗

在正常使用情况下,这种死锁会在生产中发生吗?在日常使用中,我们不会批量导入单个节点的所有关系,但我认为两个人可以尝试在同一时间跟踪同一个人


无论如何,我该怎么做才能避免这种情况发生?我该如何确保这种情况不会在日常生产使用中发生?

您使用的是哪一版本的neo4j?我在1.9上遇到了一些自动索引问题:我的查询选择突然停止在300k节点选择循环中的70k处,CPU和内存占用率很高,持续了几个小时,直到我将其终止。而不是我重新编程我的代码省略自动索引,它工作了。如果我将所有5340个关系的创建打包到一个批处理事务中,就不会死锁。这些关系没有自动索引。如果事情不明朗,也许你可以在?