浏览代码

YARN-3396. Handle URISyntaxException in ResourceLocalizationService. (Contributed by Brahma Reddy Battula)
(cherry picked from commit 38102420621308f5ba91cdeb6a18a63aa5acf640)

Junping Du 10 年之前
父节点
当前提交
6ea007ba91

+ 2 - 0
hadoop-yarn-project/CHANGES.txt

@@ -132,6 +132,8 @@ Release 2.8.0 - UNRELEASED
     YARN-3363. add localization and container launch time to ContainerMetrics
     YARN-3363. add localization and container launch time to ContainerMetrics
     at NM to show these timing information for each active container.
     at NM to show these timing information for each active container.
     (zxu via rkanter)
     (zxu via rkanter)
+    YARN-3396. Handle URISyntaxException in ResourceLocalizationService. 
+    (Brahma Reddy Battula via junping_du)
 
 
     YARN-2980. Move health check script related functionality to hadoop-common
     YARN-2980. Move health check script related functionality to hadoop-common
     (Varun Saxena via aw)
     (Varun Saxena via aw)

+ 6 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ResourceLocalizationService.java

@@ -995,7 +995,9 @@ public class ResourceLocalizationService extends CompositeService
         try {
         try {
           req = new LocalResourceRequest(rsrc);
           req = new LocalResourceRequest(rsrc);
         } catch (URISyntaxException e) {
         } catch (URISyntaxException e) {
-          // TODO fail? Already translated several times...
+          LOG.error(
+              "Got exception in parsing URL of LocalResource:"
+                  + rsrc.getResource(), e);
         }
         }
         LocalizerResourceRequestEvent assoc = scheduled.get(req);
         LocalizerResourceRequestEvent assoc = scheduled.get(req);
         if (assoc == null) {
         if (assoc == null) {
@@ -1069,7 +1071,9 @@ public class ResourceLocalizationService extends CompositeService
           LOG.error("Inorrect path for PRIVATE localization."
           LOG.error("Inorrect path for PRIVATE localization."
               + next.getResource().getFile(), e);
               + next.getResource().getFile(), e);
         } catch (URISyntaxException e) {
         } catch (URISyntaxException e) {
-            //TODO fail? Already translated several times...
+          LOG.error(
+              "Got exception in parsing URL of LocalResource:"
+                  + next.getResource(), e);
         }
         }
       }
       }