hani-fouladgar commented on code in PR #11218:
URL: https://github.com/apache/ozone/pull/11218#discussion_r4084307901
##########
hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java:
##########
@@ -6092,6 +6098,98 @@ public ListSnapshotDiffJobResponse listSnapshotDiffJobs(
}
}
+ /**
+ * Validate and publish a reconfigured SCM node list
+ * ({@code ozone.scm.nodes.<serviceId>}) and reload the block and container
SCM
+ * failover proxies so the OM can reach a newly added SCM without a restart.
+ *
+ * The reload reads the node list and the per-node address keys
+ * ({@code ozone.scm.address.<serviceId>.<nodeId>}) from the same live
+ * configuration. If the new list references an SCM whose address is not set
+ * yet, the reload fails: the previous node list is restored and the
exception
+ * is rethrown so the reconfiguration is reported FAILED and can be retried.
+ * This keeps the live configuration from holding an SCM node without a
+ * resolvable address (which would break {@code getServiceList()}). To add an
+ * SCM in a single {@code reconfig start}, set its address key together with
+ * the node list; the reconfiguration-complete callback
+ * ({@link #reloadScmProxiesOnReconfig}) applies the final membership once
both
Review Comment:
Reworded both the `reconfScmNodes` and `reloadScmProxiesOnReconfig`
javadocs: if the node list is applied before the address it's rolled back, the
complete callback reloads the old list, and the node is only picked up on a
second `reconfig start` once the address is stored.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]