浏览代码

YARN-1919. Potential NPE in EmbeddedElectorService#stop. (Tsuyoshi Ozawa via kasha)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1619253 13f79535-47bb-0310-9956-ffa450edef68
Karthik Kambatla 10 年之前
父节点
当前提交
bf0e9e894d

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

@@ -205,6 +205,9 @@ Release 2.6.0 - UNRELEASED
     YARN-2034. Description for yarn.nodemanager.localizer.cache.target-size-mb
     is incorrect (Chen He via jlowe)
 
+    YARN-1919. Potential NPE in EmbeddedElectorService#stop. 
+    (Tsuyoshi Ozawa via kasha)
+
 Release 2.5.0 - 2014-08-11
 
   INCOMPATIBLE CHANGES

+ 8 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/EmbeddedElectorService.java

@@ -109,8 +109,14 @@ public class EmbeddedElectorService extends AbstractService
 
   @Override
   protected void serviceStop() throws Exception {
-    elector.quitElection(false);
-    elector.terminateConnection();
+    /**
+     * When error occurs in serviceInit(), serviceStop() can be called.
+     * We need null check for the case.
+     */
+    if (elector != null) {
+      elector.quitElection(false);
+      elector.terminateConnection();
+    }
     super.serviceStop();
   }