Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions antora.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ nav:
- modules/ROOT/content-nav.adoc
asciidoc:
attributes:
neo4j-version: '5.7'
neo4j-version-exact: '5.7.0'
neo4j-buildnumber: '5.7'
java-driver-version: '5.7.0'
neo4j-version: '5.8'
neo4j-version-exact: '5.8.0'
neo4j-buildnumber: '5.8'
java-driver-version: '5.8.0'
neo4j-documentation-branch: 'dev'
page-origin-private: false
neo4j-javadocs-base-uri: "https://neo4j.com/docs/java-reference/5/javadocs"
7 changes: 3 additions & 4 deletions modules/ROOT/pages/transaction-management.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,7 @@ Due to the limitations of the _read-committed isolation level_, the increments m
If there is a direct dependency, Cypher automatically acquires a write lock before reading.
A direct dependency is when the right-hand side of `SET` has a dependent property read in the expression or the value of a key-value pair in a literal map.

For example, if you run the following query by one hundred concurrent clients, it is very likely not to increment the property `n.prop` to 100, unless a write lock is acquired before reading the property value.
This is because all queries read the value of `n.prop` within their own transaction, and cannot see the incremented value from any other transaction that has not yet been committed.
In the worst case scenario, the final value would be as low as 1 if all threads perform the read before any has committed their transaction.
For example, if you run one of the following queries by one hundred concurrent clients, it will increment the property `n.prop` to 100 because Cypher will automatically acquire a write lock.

.Cypher can acquire a write lock
====
Expand All @@ -108,7 +106,8 @@ SET n += {prop: n.prop + 1}
----
====

Due to the complexity of determining such a dependency in the general case, Cypher does not cover any of the following example cases:
Due to the complexity of determining such a dependency in the general case, Cypher does not cover all cases.
If you run one of the following queries concurrently 100 times, the final value of `n.prop` will most probably be less than 100.

.Complex Cypher
====
Expand Down