Articles tagged as transaction
Enabling Transaction Timeout Within Application
There is a dbms.transaction.timeout global setting on Neo4j that can be set in neo4j.conf file so if any query from any user exceeds the timeout threshold specified, that query is…
Explantion of debug.log message of Commits found after last checkpoint
When running backup for example you may observe in the output of said command detail similar to and see that there is a long pause (i.e. 5+ minutes) from Start…
Why did I get the “Kernel API returned non-existent relationship type: -1” exception?
In rare situations, the Neo4j Bolt driver throws an IllegalStateException. The top part of the stack appears as: Under the covers, this is what happens. The getRelationshipTypeById(int type) method is…
Large Delete Transaction Best Practices in Neo4j
In order to achieve the best performance, and avoid negative effects on the rest of the system, consider these best practices when processing large deletes. Start by identifying which situation…
Neo4j behaviour when running out of disk space (3.4+)
Following the improvements on the recovery process after an instance runs out of disk space introduced in v3.4.0, this article aims to offer a view on the behaviour of Neo4j…
Neo4j’s commit process explained
This article will try to guide you through Neo4j’s commit and replication processes both for single instances and causal clusters. Single Instance When you call tx.commit(), the transaction will go…
Neo4j current transaction commit process order
Transactions in Neo4j use a read-committed isolation level, which means they will see data as soon as it has been committed and will not see data in other transactions that…
Shared vs Exclusive Transaction locks
This document describes the meaning of a shared lock as seen by transactions and the difference between a shared and exclusive lock. A "shared lock" means multiple transactions can be…