You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by di...@apache.org on 2022/04/22 02:37:38 UTC

[hadoop] branch trunk updated: YARN-11111. Recovery failure when node-label configure-type transit from delegated-centralized to centralized (#4200)

This is an automated email from the ASF dual-hosted git repository.

dineshc pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git


The following commit(s) were added to refs/heads/trunk by this push:
     new b35b744670f YARN-11111. Recovery failure when node-label configure-type transit from delegated-centralized to centralized (#4200)
b35b744670f is described below

commit b35b744670f5a760e6a3d1433bcf4f65a2fcd64b
Author: Junfan Zhang <ju...@outlook.com>
AuthorDate: Fri Apr 22 10:37:28 2022 +0800

    YARN-11111. Recovery failure when node-label configure-type transit from delegated-centralized to centralized (#4200)
---
 .../nodelabels/store/op/NodeLabelMirrorOp.java     | 27 ++++++++++++++--------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/store/op/NodeLabelMirrorOp.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/store/op/NodeLabelMirrorOp.java
index 95004866458..64400fe6e6c 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/store/op/NodeLabelMirrorOp.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/nodelabels/store/op/NodeLabelMirrorOp.java
@@ -27,6 +27,8 @@ import org.apache.hadoop.yarn.server.api.protocolrecords.impl.pb
     .AddToClusterNodeLabelsRequestPBImpl;
 import org.apache.hadoop.yarn.server.api.protocolrecords.impl.pb
     .ReplaceLabelsOnNodeRequestPBImpl;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -40,6 +42,8 @@ import java.util.Set;
  */
 public class NodeLabelMirrorOp
     extends FSNodeStoreLogOp<CommonNodeLabelsManager> {
+  private static final Logger LOG = LoggerFactory.getLogger(
+          NodeLabelMirrorOp.class);
 
   public NodeLabelMirrorOp() {
     super();
@@ -66,15 +70,20 @@ public class NodeLabelMirrorOp
             .parseDelimitedFrom(is)).getNodeLabels();
     mgr.addToCluserNodeLabels(labels);
 
-    if (mgr.isCentralizedConfiguration()) {
-      // Only load node to labels mapping while using centralized
-      // configuration
-      Map<NodeId, Set<String>> nodeToLabels =
-          new ReplaceLabelsOnNodeRequestPBImpl(
-              YarnServerResourceManagerServiceProtos
-                  .ReplaceLabelsOnNodeRequestProto
-                  .parseDelimitedFrom(is)).getNodeToLabels();
-      mgr.replaceLabelsOnNode(nodeToLabels);
+    try {
+      if (mgr.isCentralizedConfiguration() && is.available() != 0) {
+        // Only load node to labels mapping while using centralized
+        // configuration
+        Map<NodeId, Set<String>> nodeToLabels =
+                new ReplaceLabelsOnNodeRequestPBImpl(
+                        YarnServerResourceManagerServiceProtos
+                                .ReplaceLabelsOnNodeRequestProto
+                                .parseDelimitedFrom(is)).getNodeToLabels();
+        mgr.replaceLabelsOnNode(nodeToLabels);
+      }
+    } catch (Exception e) {
+      LOG.error("Errors on loading node to labels mapping while using "
+              + "centralized configuration", e);
     }
   }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org