Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 通过多线程更新关系时neo4j中的死锁问题_Multithreading_Neo4j_Deadlock - Fatal编程技术网

Multithreading 通过多线程更新关系时neo4j中的死锁问题

Multithreading 通过多线程更新关系时neo4j中的死锁问题,multithreading,neo4j,deadlock,Multithreading,Neo4j,Deadlock,我有两个节点叫做Member和Content,它们都以n:n的方式与relationshipHAS\u RECOMMENDED(Member-[:HAS\u RECOMMENDED]->Content)相关。一个成员可以有多个推荐内容,一个内容可以由多个成员推荐 当我使用多线程从java创建图形和关系时,我得到以下错误: org.springframework.dao.ConcurrencyFailureException:执行时出错 密码“Neo.TransientError.Transact

我有两个节点叫做Member和Content,它们都以n:n的方式与relationship
HAS\u RECOMMENDED
(Member-[:HAS\u RECOMMENDED]->Content)相关。一个成员可以有多个推荐内容,一个内容可以由多个成员推荐

当我使用多线程从java创建图形和关系时,我得到以下错误:

org.springframework.dao.ConcurrencyFailureException:执行时出错 密码“Neo.TransientError.Transaction.DeadlockDetected”;代码: 检测到Neo.TransientError.Transaction.deadlock;说明: LockClient[1604184]无法在资源RWLock[NODE(63575)上等待,
hash=2083848996]由于=>LockClient[1604184]在创建关系时,其端点节点被写锁定。如果多个线程试图创建涉及同一组端点节点的关系,则可能会发生死锁,正如您所经历的那样


如果您可以让每个线程在其自己的端点节点集上工作(不被任何其他线程共享),那么您应该能够避免此类死锁。

创建关系时,其端点节点被写锁定。如果多个线程试图创建涉及同一组端点节点的关系,则可能会发生死锁,正如您所经历的那样


如果您可以让每个线程在其自己的端点节点集(不被任何其他线程共享)上工作,那么您应该能够避免此类死锁。

“如果您可以让每个线程在其自己的端点节点集(不被任何其他线程共享)上工作,那么您应该能够避免此类死锁。”!“如果您可以让每个线程在其自己的端点节点集上工作(不被任何其他线程共享),那么您应该能够避免此类死锁。”这不是很令人欣慰!