@@ -1056,7 +1056,7 @@ For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-ver
10561056| *Mode* 3+| WRITE
10571057|===
10581058
1059- [role=label--enterprise-edition label--admin-only]
1059+ [role=label--enterprise-edition label--admin-only label--deprecated-2025.01 ]
10601060[[procedure_dbms_quarantineDatabase]]
10611061=== dbms.quarantineDatabase()
10621062
@@ -1076,6 +1076,38 @@ For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-ver
10761076| *Mode* 3+| DBMS
10771077|===
10781078
1079+
1080+ [role=label--enterprise-edition label--admin-only]
1081+ [[procedure_dbms_unquarantineDatabase]]
1082+ === dbms.unquarantineDatabase()
1083+
1084+
1085+ .Details
1086+ |===
1087+ | *Syntax* 3+m| dbms.unquarantineDatabase(server, databaseName, operation) :: ()
1088+ | *Description* 3+a| Remove the quarantine status from a database in a server performing a cleanup `operation`.
1089+ The possible values for the cleanup operation are:
1090+
1091+ * `keepStateKeepStore` -- do nothing, leave store and cluster state as it is,
1092+ * `replaceStateKeepStore` -- join as a new member clearing the current cluster state but keeping the store
1093+ * `replaceStateReplaceStore` -- join as a new member clearing both the current cluster state and the store
1094+ .4+| *Input arguments* | *Name* | *Type* | *Description*
1095+ | `server` | `STRING` | The name or the id of the server where there is the quarantined database.
1096+ | `databaseName` | `STRING` | The name of the database whose quarantine status must be removed.
1097+ | `operation` | `STRING` | Select a cleanup operation to perform while removing the quarantine.
1098+ | *Mode* 3+| DBMS
1099+ |===
1100+
1101+ [NOTE]
1102+ ====
1103+ If you choose to clear the current cluster state, the server will try to join as a new member,
1104+ but this joining can succeed if and only if there is a majority of old members "letting" the
1105+ new members in. Let's assume our cluster has a topology with three primaries. If there is only one server
1106+ in `QUARANTINED` mode, then it is safe to choose `replaceStateKeepStore` or `replaceStateReplaceStore`.
1107+ If there are two servers in `QUARANTINED` mode, then you should not use concurrently `replaceStateKeepStore` or
1108+ `replaceStateReplaceStore` for both servers because there would be no majority to let them in.
1109+ ====
1110+
10791111[role=label--admin-only label--deprecated-5.9]
10801112[[procedure_dbms_upgrade]]
10811113=== dbms.upgrade()
@@ -1925,6 +1957,13 @@ Replaced by: xref:procedures.adoc#procedure_dbms_routing_getroutingtable[`dbms.r
19251957Before Neo4j 5.23, the procedure can be run only with the `Admin` privileges. +
19261958Replaced by xref:clustering/server-syntax.adoc#server-management-syntax[`ENABLE SERVER`].
19271959
1960+ // New in v6
1961+ | xref:procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase()`]
1962+ | label:no[]
1963+ | label:yes[]
1964+ | label:admin-only[] label:deprecated[Deprecated in 2025.01] +
1965+ Replaced by procedures.adoc#procedure_dbms_unquarantineDatabase[`dbms.unquarantineDatabase()`]
1966+
19281967| xref:procedures.adoc#procedure_dbms_setDatabaseAllocator[`dbms.setDatabaseAllocator()`]
19291968| label:no[]
19301969| label:yes[]
0 commit comments