Neo4j Die Datenbank wird gesperrt, wenn die Transaktion nicht geschlossen wird

8

Ich bekomme dieses Problem seit langer Zeit. Wenn die Neo4j-Transaktion nicht ordnungsgemäß geschlossen wird (committed oder rollback) (Dies kann aufgrund von Exceptions, Or die / exit mitten in der Transaktion usw. auftreten), dann gibt Neo4j die Sperre nicht frei.

Zum Lösen muss ich Neo4j stoppen und Neo4j erneut starten. Das sollte nicht erforderlich sein.

Ich überprüfe Serverkonfigurationen Es hat eine Konfiguration org.neo4j.server.transaction.timeout=60 , die besagt, dass der Standardwert 60 Sekunden ist . Wenn diese Einstellung also standardmäßig für mich funktioniert, sollte nach 60 Sekunden ein Timeout aufgetreten sein.

Wie kann ich überprüfen, ob die Datenbank gesperrt ist oder nicht? Wie kann man die Datenbanksperre mit Code oder Konfigurationen einfach vermeiden oder entfernen? Ich benutze neuste Neo4j 2.2.3.

    
Somnath Muluk 10.07.2015, 10:43
quelle

1 Antwort

4

Sie müssen überprüfen, ob der von Ihnen verwendete Treiber mit dem Transaktions-Cypher-Endpunkt . Das Timeout gilt nur für dieses.

Also mein Verdacht ist, dass Sie den alten Chiffrierendpunkt verwenden, der nicht bekannt ist von Timeouts.

    
Stefan Armbruster 16.07.2015, 12:15
quelle