[ 
https://issues.apache.org/jira/browse/HADOOP-17327?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chao Sun updated HADOOP-17327:
------------------------------
    Fix Version/s: 3.4.0
                   3.3.1

> NPE when starting MiniYARNCluster from hadoop-client-minicluster
> ----------------------------------------------------------------
>
>                 Key: HADOOP-17327
>                 URL: https://issues.apache.org/jira/browse/HADOOP-17327
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 3.3.0
>            Reporter: Chao Sun
>            Priority: Critical
>             Fix For: 3.3.1, 3.4.0
>
>
> When starting MiniYARNCluster one could get the following exception:
> {code}
>   java.lang.NullPointerException:
>   at 
> org.apache.hadoop.yarn.server.nodemanager.webapp.WebServer.serviceStart(WebServer.java:72)
>   at org.apache.hadoop.service.AbstractService.start(AbstractService.java:194)
>   at 
> org.apache.hadoop.service.CompositeService.serviceStart(CompositeService.java:122)
>   at org.apache.hadoop.service.AbstractService.start(AbstractService.java:194)
>   at 
> org.apache.hadoop.yarn.server.MiniYARNCluster$NodeManagerWrapper.serviceStart(MiniYARNCluster.java:616)
>   at org.apache.hadoop.service.AbstractService.start(AbstractService.java:194)
>   at 
> org.apache.hadoop.service.CompositeService.serviceStart(CompositeService.java:122)
>   at 
> org.apache.hadoop.yarn.server.MiniYARNCluster.serviceStart(MiniYARNCluster.java:327)
>   at org.apache.hadoop.service.AbstractService.start(AbstractService.java:194)
>   at 
> org.apache.spark.deploy.yarn.BaseYarnClusterSuite.beforeAll(BaseYarnClusterSuite.scala:96)
>   ...
> {code}
> Looking into the code, this is because we explicitly exclude resource files 
> under 
> {{hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/resources/TERMINAL}},
>  and therefore this code in {{WebServer}} fails with NPE:
> {code}
>     terminalParams.put("resourceBase", WebServer.class
>         .getClassLoader().getResource("TERMINAL").toExternalForm());
> {code}
> Those who use {{hadoop-minicluster}} may not be affected because they'll also 
> need {{hadoop-yarn-server-nodemanager}} as an extra dependency, which 
> includes the resource files. On the other hand {{hadoop-client-minicluster}} 
> packages both test classes (e.g., {{MiniYARNCluster}}) as well as main 
> classes (e.g., {{ResourceManager}} and {{NodeManager}}) into a single shaded 
> jar. It should include these resource files for testing as well. Otherwise, 
> {{MiniYARNCluster}} is unusable.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to