Skip to content

Commit 5a69402

Browse files
JPryce-AklundhrenetapopovaNataliaIvakina
authored
Restructure Procedures page and add new Details tables (#1820)
Once merged, we need to create a redirect for _reference/procedures.adoc_ and the _reference/index.adoc_. --------- Co-authored-by: Reneta Popova <[email protected]> Co-authored-by: NataliaIvakina <[email protected]>
1 parent 3476175 commit 5a69402

File tree

17 files changed

+2269
-2610
lines changed

17 files changed

+2269
-2610
lines changed

modules/ROOT/content-nav.adoc

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@
125125
*** xref:database-administration/composite-databases/querying-composite-databases.adoc[]
126126
*** xref:database-administration/composite-databases/sharding-with-copy.adoc[]
127127
** xref:database-administration/syntax.adoc[]
128+
** xref:database-administration/routing-decisions.adoc[]
128129
129130
* xref:database-internals/index.adoc[]
130131
** xref:database-internals/transaction-management.adoc[]
@@ -236,6 +237,8 @@
236237
*** xref:tools/neo4j-admin/validate-config.adoc[]
237238
** xref:tools/cypher-shell.adoc[]
238239
240+
* xref:procedures.adoc[]
241+
239242
* xref:tutorial/index.adoc[]
240243
//** xref:tutorial/local-causal-cluster.adoc[]
241244
//** xref:tutorial/causal-backup-restore-db.adoc[]
@@ -246,10 +249,6 @@
246249
** xref:tutorial/tutorial-immutable-privileges.adoc[]
247250
** xref:tutorial/tutorial-clustering-docker.adoc[]
248251
249-
* Appendix
250-
** xref:reference/procedures.adoc[]
251-
** xref:routing-decisions.adoc[]
252-
253252
// ** xref:clustering-advanced/index.adoc[]
254253
// *** xref:clustering-advanced/lifecycle.adoc[]
255254
// *** xref:clustering-advanced/multi-data-center/index.adoc[]

modules/ROOT/pages/authentication-authorization/ldap-integration.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ this LDAP group will fail authentication, even if their credentials are correct.
6565
|===
6666

6767
All settings are defined at server startup time in the default configuration file _xref:configuration/neo4j-conf.adoc[neo4j.conf]_ or can be modified at
68-
runtime using xref:reference/procedures.adoc#procedure_dbms_setconfigvalue[`dbms.setConfigValue()`].
68+
runtime using xref:procedures.adoc#procedure_dbms_setconfigvalue[`dbms.setConfigValue()`].
6969

7070

7171
[[auth-ldap-configure-provider]]

modules/ROOT/pages/clustering/databases.adoc

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -145,9 +145,9 @@ By default, a newly created database has both read and write access.
145145

146146
To relieve the load of a specific server(s), you can use one of the following procedures to deallocate databases causing the pressure from the server(s):
147147

148-
* xref:reference/procedures.adoc#procedure_dbms_cluster_deallocateDatabaseFromServer[`dbms.cluster.deallocateDatabaseFromServer("server-name", "database-name")`]
149-
* xref:reference/procedures.adoc#procedure_dbms_cluster_deallocateDatabaseFromServers[`dbms.cluster.deallocateDatabaseFromServers(["server-name1", "server-name2"\], "database-name")`]
150-
* xref:reference/procedures.adoc#procedure_dbms_cluster_deallocateNumberOfDatabases[`dbms.cluster.deallocateNumberOfDatabases("server-name", number)`]
148+
* xref:procedures.adoc#procedure_dbms_cluster_deallocateDatabaseFromServer[`dbms.cluster.deallocateDatabaseFromServer("server-name", "database-name")`]
149+
* xref:procedures.adoc#procedure_dbms_cluster_deallocateDatabaseFromServers[`dbms.cluster.deallocateDatabaseFromServers(["server-name1", "server-name2"\], "database-name")`]
150+
* xref:procedures.adoc#procedure_dbms_cluster_deallocateNumberOfDatabases[`dbms.cluster.deallocateNumberOfDatabases("server-name", number)`]
151151

152152
[NOTE]
153153
====
@@ -200,7 +200,7 @@ To rebalance all database allocations across the cluster, for example, because y
200200
[[reallocate-databases-procedure]]
201201
=== Reallocate databases using a procedure
202202

203-
You can use the procedure xref:reference/procedures.adoc#procedure_dbms_cluster_reallocateDatabase[`dbms.cluster.reallocateDatabase`] to rebalance a specific database across the cluster, or xref:reference/procedures.adoc#procedure_dbms_cluster_reallocateNumberOfDatabases[`dbms.cluster.reallocateNumberOfDatabases`] to rebalance a number of database allocations across the cluster and relieve overloaded servers.
203+
You can use the procedure xref:procedures.adoc#procedure_dbms_cluster_reallocateDatabase[`dbms.cluster.reallocateDatabase`] to rebalance a specific database across the cluster, or xref:procedures.adoc#procedure_dbms_cluster_reallocateNumberOfDatabases[`dbms.cluster.reallocateNumberOfDatabases`] to rebalance a number of database allocations across the cluster and relieve overloaded servers.
204204
Note that if the cluster is already balanced, no reallocations will happen when running these procedures.
205205
These procedures do not require a server name and can be executed with or without a dry run.
206206

@@ -240,7 +240,7 @@ This command can also be used with `DRYRUN` to preview the new allocation of dat
240240
[CAUTION]
241241
====
242242
`REALLOCATE DATABASES` on a large cluster with many databases has the potential to move a lot of allocations at once, which might stress the cluster.
243-
Consider starting with more limited reallocations, such as xref:reference/procedures.adoc#procedure_dbms_cluster_reallocateNumberOfDatabases[`dbms.cluster.reallocateNumberOfDatabases`] with a small number, and let the databases complete their reallocation before calling it again, until no more reallocations are necessary.
243+
Consider starting with more limited reallocations, such as xref:procedures.adoc#procedure_dbms_cluster_reallocateNumberOfDatabases[`dbms.cluster.reallocateNumberOfDatabases`] with a small number, and let the databases complete their reallocation before calling it again, until no more reallocations are necessary.
244244
====
245245

246246
[NOTE]
@@ -263,13 +263,13 @@ neo4j@neo4j> DRYRUN REALLOCATE DATABASES;
263263
[[recreate-databases]]
264264
== Recreate a database
265265

266-
Neo4j 5.24 introduces the xref:reference/procedures.adoc#procedure_dbms_cluster_recreateDatabase[`dbms.cluster.recreateDatabase()`] procedure, which allows you:
266+
Neo4j 5.24 introduces the xref:procedures.adoc#procedure_dbms_cluster_recreateDatabase[`dbms.cluster.recreateDatabase()`] procedure, which allows you:
267267

268268
* To change the database store to a specified backup, while keeping all the associated privileges for the database.
269269

270270
* To make your database write-available again after it has been lost (for example, due to a disaster).
271271
// See xref:clustering/disaster-recovery.adoc[] for more information.
272-
272+
273273
[CAUTION]
274274
====
275275
The recreate procedure works only for real user databases and not for composite databases, or the `system` database.
@@ -338,7 +338,7 @@ If not used stores were more up to date than the used ones, this results in data
338338

339339
You can specify a set of available servers.
340340
The stores on all allocations will be synchronized to the most up-to-date store from the defined servers.
341-
The number of defined servers cannot exceed the number of total allocations in the desired topology.
341+
The number of defined servers cannot exceed the number of total allocations in the desired topology.
342342

343343
[source, shell]
344344
----
@@ -375,7 +375,7 @@ There is an option to define a new topology when recreating a database.
375375
This can be beneficial during a disaster, if enough servers are not available to recreate the database with the original topology.
376376
When altering the total number of allocations down during a recreation, it is important to remember that the number of seeding servers cannot exceed the number of total allocations of the database.
377377
This also holds true when using recreate with an empty list of seeders.
378-
If there are more available servers in the cluster hosting the database than the number of new allocations, the recreation will fail.
378+
If there are more available servers in the cluster hosting the database than the number of new allocations, the recreation will fail.
379379

380380
[source, shell]
381381
----
@@ -664,7 +664,7 @@ If not set, there are no mode constraints on the server.
664664
[[cluster-default-database]]
665665
== Change the default database
666666

667-
You can use the procedure xref:reference/procedures.adoc#procedure_dbms_setDefaultDatabase[`dbms.setDefaultDatabase("newDefaultDatabaseName")`] to change the default database for a DBMS.
667+
You can use the procedure xref:procedures.adoc#procedure_dbms_setDefaultDatabase[`dbms.setDefaultDatabase("newDefaultDatabaseName")`] to change the default database for a DBMS.
668668

669669
. Ensure that the database to be set as default exists, otherwise create it using the command `CREATE DATABASE <database-name>`.
670670
. Show the name and status of the current default database by using the command `SHOW DEFAULT DATABASE`.

modules/ROOT/pages/clustering/monitoring/status-check.adoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
[[monitoring-replication]]
55
= Monitor replication status
66

7-
Neo4j 5.24 introduces the xref:reference/procedures.adoc#procedure_dbms_cluster_statusCheck[`dbms.cluster.statusCheck()`] procedure to monitor the ability to replicate in clustered databases.
8-
7+
Neo4j 5.24 introduces the xref:procedures.adoc#procedure_dbms_cluster_statusCheck[`dbms.cluster.statusCheck()`] procedure, which can be used to monitor the ability to replicate in clustered databases.
8+
In most cases this means a clustered database is write available.
99
The procedure identifies which members of a clustered database are up-to-date and can participate in successful replication.
1010
Therefore, it is useful in determining the fault tolerance of a clustered database.
1111
Additionally, you can use the procedure to identify the leader of a clustered database within the cluster.
@@ -37,7 +37,7 @@ CALL dbms.cluster.statusCheck(databases :: LIST<STRING>, timeoutMilliseconds = n
3737
| databases | List<String> | Databases for which the status check should run.
3838
Providing an empty list runs the status check for all *clustered* databases on that server, i.e. it does not run on singles or secondaries.
3939
| timeoutMilliseconds | Integer | How long to allow for replication, before returning it was unsuccessful.
40-
Default value is 1000 milliseconds.
40+
Default value is 1000 milliseconds.
4141
|===
4242

4343
[status-check-return-arguments]
@@ -55,10 +55,10 @@ The procedure returns a row for all primary members of all the requested databas
5555
| replicationSuccessful | Boolean | Indicates if the server (on which the procedure is run) can replicate a transaction.
5656
| memberStatus | String | The status of each primary member.
5757
| recognisedLeader | String | The server id of the perceived leader of each primary member.
58-
| recognisedLeaderTerm | Integer | The term of the perceived leader of each primary member.
58+
| recognisedLeaderTerm | Integer | The term of the perceived leader of each primary member.
5959
If the members report different leaders, the one with the highest term should be trusted.
6060
| requester | Boolean | Whether a server is the requester or not.
61-
| error | String | Contains the error message if one is present.
61+
| error | String | Contains the error message if one is present.
6262
An example of an error is that one or more of the requested databases do not exist on the requester.
6363
|===
6464

modules/ROOT/pages/clustering/servers.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ neo4j@neo4j> ENABLE SERVER '25a7efc7-d063-44b8-bdee-f23357f89f01' OPTIONS
277277
The `allowedDatabases` and `deniedDatabases` are mutually exclusive and if both are specified, an error is returned.
278278

279279
Optionally, it is possible to automatically enable free servers by setting the xref:configuration/configuration-settings.adoc#config_initial.dbms.automatically_enable_free_servers[`initial.dbms.automatically_enable_free_servers`] to `true`.
280-
This can be changed after startup using the xref:reference/procedures.adoc#procedure_dbms_cluster_setAutomaticallyEnableFreeServers[`dbms.cluster.setAutomaticallyEnableFreeServers`] procedure.
280+
This can be changed after startup using the xref:procedures.adoc#procedure_dbms_cluster_setAutomaticallyEnableFreeServers[`dbms.cluster.setAutomaticallyEnableFreeServers`] procedure.
281281

282282
Server `tags` are used during database allocation and when configuring load balancing and replication policies.
283283
They cannot contain duplicates, so `tags:['eu', 'eu']` will return an error.

modules/ROOT/pages/clustering/settings.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ This server always only hosts those databases in `SECONDARY` mode.
2020

2121
| xref:configuration/configuration-settings.adoc#config_initial.dbms.automatically_enable_free_servers[`initial.dbms.automatically_enable_free_servers`]
2222
| This setting allows for auto-enable of servers in the `FREE` state.
23-
After startup, it can be changed with the xref:reference/procedures.adoc#procedure_dbms_cluster_setAutomaticallyEnableFreeServers[`dbms.cluster.setAutomaticallyEnableFreeServers`] procedure.
23+
After startup, it can be changed with the xref:procedures.adoc#procedure_dbms_cluster_setAutomaticallyEnableFreeServers[`dbms.cluster.setAutomaticallyEnableFreeServers`] procedure.
2424

2525
| xref:configuration/configuration-settings.adoc#config_server.cluster.system_database_mode[`server.cluster.system_database_mode`]
2626
| Every cluster member hosts the `system` database.

modules/ROOT/pages/clustering/setup/deploy.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ If not specified, it defaults to zero hostings in secondary mode.
4646
[NOTE]
4747
====
4848
Any setting with the `initial` prefix is only effective on the first startup of the DBMS.
49-
Changing the default number of primaries and secondaries dynamically can only be done with the xref:reference/procedures.adoc#procedure_dbms_setDefaultAllocationNumbers[`dbms.setDefaultAllocationNumbers`] procedure.
49+
Changing the default number of primaries and secondaries dynamically can only be done with the xref:procedures.adoc#procedure_dbms_setDefaultAllocationNumbers[`dbms.setDefaultAllocationNumbers`] procedure.
5050
See xref:clustering/databases.adoc#_create_database[`CREATE DATABASE`] for more information.
51-
To view the current default settings, use the xref:reference/procedures.adoc#procedure_dbms_showTopologyGraphConfig[`dbms.showTopologyGraphConfig`] procedure.
51+
To view the current default settings, use the xref:procedures.adoc#procedure_dbms_showTopologyGraphConfig[`dbms.showTopologyGraphConfig`] procedure.
5252
====
5353

5454

modules/ROOT/pages/routing-decisions.adoc renamed to modules/ROOT/pages/database-administration/routing-decisions.adoc

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
[appendix]
21
[role=enterprise-edition]
3-
[[appendix-routing-decisions]]
2+
[[routing-decisions]]
43
= Query routing decisions
54
:description: This page describes in detail how queries are routed to databases for execution.
65

76
Query routing is the process of deciding which Cypher executor (database) should be used and at which physical location the query should be executed.
87
Every query that arrives at a Neo4j server, over the bolt protocol from a driver, undergoes the process described here.
98

10-
[[appendix-routing-decisions-tree]]
119
== Routing decision tree
1210

1311
Before the query is executed, these are the decisions taken during query routing stage:
@@ -52,6 +50,5 @@ Step 5: Open a transaction::
5250
Step 6: Execute query::
5351
* Execute the query in the open transaction.
5452

55-
[[appendix-routing-decisions-tree-illustrated]]
5653
== Illustrated routing decision tree
5754
image::routing-decisions.svg[width=800, title="Illustrated routing decision tree"]

modules/ROOT/pages/database-administration/standard-databases/errors.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ It produces a database dump that can be further examined and potentially repaire
162162

163163
There are two ways to get a database into a `quarantined` state:
164164

165-
* By using the xref:reference/procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase`] procedure locally to isolate a specific database.
165+
* By using the xref:procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase`] procedure locally to isolate a specific database.
166166
The procedure must be executed on the instance whose copy of the database you want to quarantine.
167167
A reason for that can be, for example, when a database is unable to start on a given instance due to a file system permissions issue with the volume where the database is located or when a recently started database begins to log errors.
168168
The quarantine state renders the database inaccessible on that instance and prevents its state from being changed, for example, with the `START DATABASE` command.
@@ -210,7 +210,7 @@ The result contains the user, the time, and the reason for the quarantine.
210210

211211
[NOTE]
212212
====
213-
The `dbms.quarantineDatabase` procedure replaces xref:reference/procedures.adoc#procedure_dbms_cluster_quarantinedatabase[`dbms.cluster.quarantineDatabase`], which has been deprecated in Neo4j 4.3 and will be removed with the next major version.
213+
The `dbms.quarantineDatabase` procedure replaces xref:procedures.adoc#procedure_dbms_cluster_quarantinedatabase[`dbms.cluster.quarantineDatabase`], which has been deprecated in Neo4j 4.3 and will be removed with the next major version.
214214
====
215215

216216
.Quarantine a database
@@ -251,7 +251,7 @@ neo4j@system> SHOW DATABASE foo;
251251
====
252252
A `quarantined` state is persisted for user databases.
253253
This means that if a database is quarantined, it will remain so even if that Neo4j instance is restarted.
254-
You can remove it only by running the xref:reference/procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase`] procedure on the instance where the quarantined database is located, passing `false` for the `setStatus` parameter.
254+
You can remove it only by running the xref:procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase`] procedure on the instance where the quarantined database is located, passing `false` for the `setStatus` parameter.
255255
256256
The one exception to this rule is for the built-in `system` database.
257257
Any quarantine for that database is removed automatically after instance restart.

modules/ROOT/pages/database-internals/transaction-logs.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ Old transaction logs cannot be safely archived or removed by external jobs since
8585
Log pruning is called only after checkpoint completion to ensure at least one checkpoint and points to a valid place in the transaction log data.
8686
In reality, this means that all transaction logs created between checkpoints are kept for some time, and only after a checkpoint, the pruning strategy removes them.
8787
For more details on how to speed up checkpointing, see xref:database-internals/checkpointing.adoc#transaction-logging-log-pruning[Configure log pruning].
88-
To force a checkpoint, run the procedure xref:reference/procedures.adoc#procedure_db_checkpoint[`CALL db.checkpoint()`].
88+
To force a checkpoint, run the procedure xref:procedures.adoc#procedure_db_checkpoint[`CALL db.checkpoint()`].
8989
+
9090
[NOTE]
9191
====

0 commit comments

Comments
 (0)