Skip to content

Commit a8ded55

Browse files
Merge pull request #22 from davidoliverSP2/4.4-cluster-support-cp
Add section on cluster routing capability
2 parents 4cb5e91 + 6787b86 commit a8ded55

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

modules/ROOT/pages/actions/index.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ There are several _actions_ that can be performed using the Cypher transaction H
1010
* xref:actions/transaction-flow.adoc[]
1111
* xref:actions/query-format.adoc[]
1212
* xref:actions/result-format.adoc[]
13+
* xref:actions/routing.adoc[]
1314

1415
*Using the API:*
1516

@@ -31,4 +32,3 @@ There are several _actions_ that can be performed using the Cypher transaction H
3132
* xref:actions/expired-transactions.adoc[]
3233
* xref:actions/handling-errors.adoc[]
3334
* xref:actions/handling-errors-in-an-open-transaction.adoc[]
34-
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
:description: HTTP API routing.
2+
3+
[[http-api-actions-cluster-routing]]
4+
= Clusters and routing
5+
6+
The Cypher Transactional API provides a limited level of support for query routing.
7+
8+
The level of support depends on whether link:https://neo4j.com/docs/operations-manual/current/clustering/internals/#clustering-routing[Server-side routing] has been enabled:
9+
10+
[options="header", cols="20m,80a"]
11+
|===
12+
| Server-side routing
13+
| Support
14+
15+
|disabled
16+
|Clusters support read-only queries.
17+
18+
|enabled
19+
|Clusters support routing for queries that involve a xref::/actions/begin-and-commit-a-transaction-in-one-request.adoc[single request] (i.e. via the `tx/commit` endpoint).
20+
This is because the cluster does not currently support transaction identifiers across the cluster.
21+
22+
In this context, all queries are considered `WRITE` queries, even if they contain no cypher with write operations.
23+
Since the HTTP API did not previously support marking queries as `READ` or `WRITE`, the server assumes all queries are `WRITE` queries to support all cases.
24+
The effect of this is that all queries are ultimately executed on the leader.
25+
|===

0 commit comments

Comments
 (0)