[ 
https://issues.apache.org/jira/browse/MAPREDUCE-5719?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13887062#comment-13887062
 ] 

Sandy Ryza commented on MAPREDUCE-5719:
---------------------------------------

Is my understanding correct that the null pointer can only happen in the test?  
Is there any way to work around this in the test code?  If not, we should at 
least comment that we're doing the check for that reason.

> Potential null pointer access in 
> AbstractYarnScheduler#getTransferredContainers()
> ---------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-5719
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5719
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>    Affects Versions: 3.0.0, 2.3.0
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>         Attachments: mapreduce-5719-v1.txt, mapreduce-5719-v2.txt
>
>
> From https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1666/console :
> {code}
> Tests run: 14, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 63.12 sec 
> <<< FAILURE! - in org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator
> testCompletedTasksRecalculateSchedule(org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator)
>   Time elapsed: 2.083 sec  <<< ERROR!
> org.apache.hadoop.yarn.exceptions.YarnRuntimeException: 
> java.lang.NullPointerException
>       at 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler.getTransferredContainers(AbstractYarnScheduler.java:50)
>       at 
> org.apache.hadoop.yarn.server.resourcemanager.ApplicationMasterService.registerApplicationMaster(ApplicationMasterService.java:277)
>       at 
> org.apache.hadoop.mapreduce.v2.app.rm.RMCommunicator.register(RMCommunicator.java:154)
>       at 
> org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator$MyContainerAllocator.register(TestRMContainerAllocator.java:1476)
>       at 
> org.apache.hadoop.mapreduce.v2.app.rm.RMCommunicator.serviceStart(RMCommunicator.java:112)
>       at 
> org.apache.hadoop.mapreduce.v2.app.rm.RMContainerAllocator.serviceStart(RMContainerAllocator.java:219)
>       at 
> org.apache.hadoop.service.AbstractService.start(AbstractService.java:193)
>       at 
> org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator$MyContainerAllocator.<init>(TestRMContainerAllocator.java:1444)
>       at 
> org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator$RecalculateContainerAllocator.<init>(TestRMContainerAllocator.java:1629)
>       at 
> org.apache.hadoop.mapreduce.v2.app.TestRMContainerAllocator.testCompletedTasksRecalculateSchedule(TestRMContainerAllocator.java:1665)
> {code}
> In above case getMasterContainer() returned null.
> AbstractYarnScheduler#getTransferredContainers() should check such condition.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to