How concurrent is Neo4j, when are locks taken?
By default concurrent reads can be performed, even if the data being read is modified in some other transaction. Concurrent writes to the same nodes or relationships will have to wait for each other. This means no locks during reads while a write operation will take a lock on the node or relationship being modified (and hold that lock until the transaction is committed or rolled back). Read more.