[
https://issues.apache.org/jira/browse/MAPREDUCE-4233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13270776#comment-13270776
]
Robert Joseph Evans commented on MAPREDUCE-4233:
------------------------------------------------
I don't really know why the tests failed. They pass for me when I run them
manually. It almost looks like for some reason the tests were run against an
unchanged version of RMNMInfo. The error for
org.apache.hadoop.mapreduce.v2.TestRMNMInfo.testRMNMInfoMissmatch shows
{noformat}
java.lang.NullPointerException
at
org.apache.hadoop.yarn.server.resourcemanager.RMNMInfo.getLiveNodeManagers(RMNMInfo.java:96)
at
org.apache.hadoop.mapreduce.v2.TestRMNMInfo.testRMNMInfoMissmatch(TestRMNMInfo.java:146)
...
{noformat}
As the cause of the error. But RMNMInfo.java:96 in the new code is {code}
if(report != null) { {code} which is impossible to throw a null pointer
exception.
My guess is that this is related to the test patch changes, and maven is
somehow confused by running the tests from testpatch without installing the
jars in the M2 directory first.
> NPE can happen in RMNMNodeInfo.
> -------------------------------
>
> Key: MAPREDUCE-4233
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-4233
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Affects Versions: 0.23.3
> Reporter: Robert Joseph Evans
> Assignee: Robert Joseph Evans
> Priority: Critical
> Attachments: MR-4233.txt
>
>
> {noformat}
> Caused by: java.lang.NullPointerException
> at
> org.apache.hadoop.yarn.server.resourcemanager.RMNMInfo.getLiveNodeManagers(RMNMInfo.java:96)
> at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:93)
> at
> com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:27)
> at
> com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
> at
> com.sun.jmx.mbeanserver.PerInterface.getAttribute(PerInterface.java:65)
> at
> com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(MBeanSupport.java:216)
> at javax.management.StandardMBean.getAttribute(StandardMBean.java:358)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:666)
> {noformat}
> Looks like rmcontext.getRMNodes() is not kept in sync with
> scheduler.getNodeReport(), so that the report can be null even though the
> context still knowns about the node.
> The simple fix is to add in a null check.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira