并发写入时Neo4j 500内部服务器错误

时间:2016-03-10 12:44:41

标签: neo4j graph-databases neo4jclient nosql

我在对Neo4j执行并发写操作时偶尔遇到500内部服务器错误。查询示例如下。

MATCH (u1:User {id:{id1}})
MATCH (u2:User {id:{id2}})
MERGE (u1)-[:FOLLOWS]->(u2)

如果是非常受欢迎的用户,您可以体验u2节点的大量并发关系创建。

在我明确处理DeadlockDetectedException并且有一个重试逻辑的时候。但是我不时会从服务器获得500以及下面的响应主体。

 <html>
     <head><title>500 Internal Server Error</title></head>
     <body bgcolor="white">
         <center><h1>500 Internal Server Error</h1></center>
         <hr><center>nginx</center>
      </body>
 </html>

这让我不知道服务器上发生了什么。如果我处理它并执行重试,一切都按预期工作。但这看起来很狡猾,因为我基本上猜测在这种特殊情况下发生的死锁可能是错误的,与实际的服务器错误无关。

1 个答案:

答案 0 :(得分:0)

此问题与我们的ngnix box配置有关,该配置在某些情况下提供了通用500,而不是传播DeadlockDetectedException

相关问题