Skip to content

Conversation

@NataliaIvakina
Copy link
Collaborator

No description provided.

@neo4j-docops-agent
Copy link
Collaborator

This PR includes documentation updates
View the updated docs at https://neo4j-docs-operations-2686.surge.sh

Updated pages:

server.default_advertised_address=server07.example.com
dbms.cluster.discovery.resolver_type=LIST
dbms.cluster.endpoints=server01.example.com:6000,server02.example.com:6000,server03.example.com:6000,server04.example.com:6000,server05.example.com:6000,server06.example.com:6000,
server.cluster.system_database_mode=PRIMARY
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should explain why we set server.cluster.system_database_mode to PRIMARY. Or to SECONDARY. We don't explain anywhere the system database mode.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, I think it would be a helpful addition.

server.cluster.system_database_mode=PRIMARY
----
+
Additionally, you can configure a set of initial settings to provide values for the server's options.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to add here information about any other configs?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rather than providing an exhaustive list of initial. settings, should we explain ones prefixed with initial are such settings and then link the configuration settings page?

@jackwaudby jackwaudby self-assigned this Oct 27, 2025

Deploying a cluster for the first time, consider configuring the xref:configuration/configuration-settings.adoc#config_dbms.cluster.minimum_initial_system_primaries_count[`dbms.cluster.minimum_initial_system_primaries_count`].
This setting defaults to `3`.
In a cluster, the `system` database forms its own Raft group.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Our position is that we try mention Raft as little as possible in the documentation as it is an implementation-level detail; in theory we could change consensus algorithms tomorrow. We don't mention Raft anywhere else in this page so I don't think we need to add this line, primarily as we then would need to explain "what is Raft".

For more information see xref:clustering/servers.adoc#_hosting_databases_on_added_servers[Hosting databases on added servers].

Note that is a cluster-level command, not a server-level command.
a| Removes all databases from the given servers.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We possibly make this more precise by saying "all user databases", but I don't think that is super important.

a| Re-balances databases among the servers in the cluster.
For more information see xref:clustering/servers.adoc#_hosting_databases_on_added_servers[Hosting databases on added servers].

Note that is a cluster-level command, not a server-level command.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we define anywhere what is meant by "cluster-level" and "server-level"? It makes sense to me, but possibly not to a user who is less familiar with clustering parlance.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good comment, but I will return to this page later, in another PR. I'd prefer to keep them and explain if it's needed.


[[server-states]]
== Server states
For details on server management command syntax, see xref:clustering/server-syntax.adoc[].
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this missing something in the []?

DEALLOCATE DATABASE[S] FROM SERVER[S] 'name'[, ...]
----

The command reallocates all their hosted databases to other servers in the cluster.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The command reallocates all their hosted databases to other servers in the cluster.
The command reallocates all user databases hosted by the server to other servers in the cluster.

server.default_advertised_address=server07.example.com
dbms.cluster.discovery.resolver_type=LIST
dbms.cluster.endpoints=server01.example.com:6000,server02.example.com:6000,server03.example.com:6000,server04.example.com:6000,server05.example.com:6000,server06.example.com:6000,
server.cluster.system_database_mode=PRIMARY
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, I think it would be a helpful addition.

server.cluster.system_database_mode=PRIMARY
----
+
Additionally, you can configure a set of initial settings to provide values for the server's options.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rather than providing an exhaustive list of initial. settings, should we explain ones prefixed with initial are such settings and then link the configuration settings page?

`modeConstraint` is used to control whether a server can be used to host a database in only primary or secondary mode.
`allowedDatabases` and `deniedDatabases` are collections of database names that filter which databases may be hosted on a server.
+
* `modeConstraint` is used to control whether a server can be used to host a database in only primary, or only secondary mode, or both.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
* `modeConstraint` is used to control whether a server can be used to host a database in only primary, or only secondary mode, or both.
* `modeConstraint` is used to control whether a server can only host user databases in primary mode, only in secondary mode, or can host databases in either mode.

Comment on lines +392 to +393
The command `REALLOCATE DATABASE[S]` can be used to rebalance database allocations across the cluster, adding some to the newly added server(s).
See xref:clustering/databases.adoc#reallocate-databases[Managing databases in a cluster -> Reallocate databases] for more information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The command `REALLOCATE DATABASE[S]` can be used to rebalance database allocations across the cluster, adding some to the newly added server(s).
See xref:clustering/databases.adoc#reallocate-databases[Managing databases in a cluster -> Reallocate databases] for more information.
possibly reallocating databases some to the newly added server(s).

Adding the possibly might be good as if you add a new server and the allocation is already optimal then no databases will move to the new server. E.g., you have 3 servers with 1 database each, adding server 4 and calling reallocate will have no impact.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants