Skip to content

Commit 065fb95

Browse files
committed
WIP
1 parent 9270c02 commit 065fb95

File tree

1 file changed

+20
-6
lines changed

1 file changed

+20
-6
lines changed

modules/ROOT/pages/clustering/disaster-recovery.adoc

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,22 @@ Verifying each state before continuing to the next step, regardless of the disas
5353

5454
[NOTE]
5555
====
56-
Before beginning this guide, start the Neo4j process on all servers that are _offline_.
57-
If a server is unable to start, inspect the logs and contact support personnel.
58-
The server may have to be considered indefinitely lost.
59-
====
60-
6156
Disasters may sometimes affect the routing capabilities of the driver and may prevent the use of the `neo4j` scheme for routing.
6257
One way to remedy this is to connect directly to the server using `bolt` instead of `neo4j`.
6358
See xref:clustering/setup/routing.adoc#clustering-routing[Server-side routing] for more information on the `bolt` scheme.
59+
====
6460

61+
=== Neo4j process started
62+
63+
==== State
64+
====
65+
The Neo4j process is started on all _offline_ servers.
66+
====
67+
68+
==== Path to correct state
69+
Start the Neo4j process on all servers that are _offline_.
70+
If a server is unable to start, inspect the logs and contact support personnel.
71+
The server may have to be considered indefinitely lost.
6572

6673
[[restore-the-system-database]]
6774
=== `System` database write availability
@@ -184,6 +191,7 @@ Depending on the environment, consider extending the timeout for this procedure.
184191
If any of the primary allocations for a database report `replicationSuccessful` = `TRUE`, this database is write available.
185192
. For each database that is not write available, recreate it to move it from lost servers and regain write availability.
186193
Go to xref:clustering/databases.adoc#recreate-databases[Recreate databases] for more information about recreate options.
194+
If any allocation has `currentStatus` = `QUARANTINED`, recreate them from backup using xref:clustering/databases.adoc#uri-seed[Backup as seed] or define seeding servers in the recreate procedure using xref:clustering/databases.adoc#specified-servers[Specified seeders] so that problematic allocations are excluded.
187195
Remember to make sure there are recent backups for the databases before recreating them, see xref:backup-restore/online-backup.adoc[Online backup] for more information.
188196
+
189197
[NOTE]
@@ -193,7 +201,12 @@ Otherwise, recreating with xref:clustering/databases.adoc#uri-seed[Backup as see
193201
=====
194202
. For each `CORDONED` server, run `DEALLOCATE DATABASES FROM SERVER cordoned-server-id` on one of the available servers.
195203
This will try to move all database allocations from this server to an available server in the cluster.
204+
+
205+
[NOTE]
206+
=====
196207
This operation might fail if enough unconstrained servers were not added to the cluster to replace lost servers.
208+
Another reason is that some available servers are also `CORDONED`.
209+
=====
197210
. For each deallocating or deallocated server, run `DROP SERVER deallocated-server-id`.
198211
This removes the server from the cluster's view.
199212
====
@@ -230,7 +243,7 @@ Therefore, the desired state has been verified when this is true for all databas
230243
CALL dbms.cluster.statusCheck([]);
231244
----
232245

233-
A stricter verification could be done to verify if all databases are in desired states on all servers.
246+
A stricter verification can be done to verify that all databases are in their desired states on all servers.
234247
For the stricter check, run `SHOW DATABASES` and verify that `requestedStatus` = `currentStatus` for all database allocations on all servers.
235248

236249
==== Path to correct state
@@ -243,6 +256,7 @@ Recreations might fail for different reasons, but one example is that the checks
243256
====
244257
. Run `CALL dbms.cluster.statusCheck([])` on all servers to identify write unavailable databases, see xref:clustering/monitoring/status-check.adoc#monitoring-replication[Monitoring replication] for more information.
245258
. Recreate every database that is not write available and has not been recreated previously, see xref:clustering/databases.adoc#recreate-databases[Recreate databases] for more information.
259+
If any allocation has `currentStatus` = `QUARANTINED`, recreate them from backup using xref:clustering/databases.adoc#uri-seed[Backup as seed] or define seeding servers in the recreate procedure using xref:clustering/databases.adoc#specified-servers[Specified seeders] so that problematic allocations are excluded.
246260
Remember to make sure there are recent backups for the databases before recreating them, see xref:backup-restore/online-backup.adoc[Online backup] for more information.
247261
. Run `SHOW DATABASES` and check any recreated databases which are not write available.
248262
Recreating a database will not complete if one of the following messages is displayed in the message field:

0 commit comments

Comments
 (0)