You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@solr.apache.org by no...@apache.org on 2022/05/05 13:11:41 UTC
[solr] 01/01: Ignore failures in creation of node role ZK nodes
This is an automated email from the ASF dual-hosted git repository.
noble pushed a commit to branch jira/solr16184
in repository https://gitbox.apache.org/repos/asf/solr.git
commit 832cce1f3324172d5c24d7465a63503a0a7d065e
Author: Noble Paul <no...@gmail.com>
AuthorDate: Thu May 5 23:11:31 2022 +1000
Ignore failures in creation of node role ZK nodes
---
solr/core/src/java/org/apache/solr/cloud/ZkController.java | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
index 1a1d050941b..6b3ef587842 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -1186,20 +1186,26 @@ public class ZkController implements Closeable {
null,
zkClient.getZkACLProvider().getACLsToAdd(nodePath),
CreateMode.EPHEMERAL));
+ zkClient.multi(ops, true);
+ List<Op> roleNodesOps = new ArrayList<>();
// Create the roles node as well
cc.nodeRoles
.getRoles()
.forEach(
(role, mode) ->
- ops.add(
+ roleNodesOps.add(
Op.create(
NodeRoles.getZNodeForRoleMode(role, mode) + "/" + nodeName,
null,
zkClient.getZkACLProvider().getACLsToAdd(nodePath),
CreateMode.EPHEMERAL)));
-
- zkClient.multi(ops, true);
+ try {
+ zkClient.multi(roleNodesOps, true);
+ } catch (KeeperException e) {
+ log.error("Error creating role nodes ", e);
+ //Unable to create role nodes
+ }
}
public void removeEphemeralLiveNode() throws KeeperException, InterruptedException {