我有兩個節點叫做成員和內容,兩者在關係爲HAS_RECOMMENDED
(成員 - [:HAS_RECOMMENDED] - >內容)的n:n路中相關。一個成員可以有多個推薦內容,一個內容可以由多個成員推薦。neo4j在多線程更新關係時發生死鎖問題
當我使用多線程創建從Java的圖形和關係,我得到以下錯誤:
org.springframework.dao.ConcurrencyFailureException: Error executing Cypher "Neo.TransientError.Transaction.DeadlockDetected"; Code: Neo.TransientError.Transaction.DeadlockDetected; Description: LockClient[1604184] can't wait on resource RWLock[NODE(63575), hash=2083848996] since => LockClient[1604184] <-[:HELD_BY]- RWLock[NODE(63663), hash=1735956338] <-[:WAITING_FOR]- LockClient[1604182] <-[:HELD_BY]- RWLock[NODE(63575), hash=2083848996]; nested exception is org.neo4j.ogm.exception.CypherException: Error executing Cypher "Neo.TransientError.Transaction.DeadlockDetected"; Code: Neo.TransientError.Transaction.DeadlockDetected; Description: LockClient[1604184] can't wait on resource RWLock[NODE(63575), hash=2083848996] since => LockClient[1604184] <-[:HELD_BY]- RWLock[NODE(63663), hash=1735956338] <-[:WAITING_FOR]- LockClient[1604182] <-[:HELD_BY]- RWLock[NODE(63575), hash=2083848996]