[ https://issues.apache.org/jira/browse/YARN-505?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13674208#comment-13674208 ]
Niranjan Singh commented on YARN-505: ------------------------------------- The NPE is in the LinkedBlockingQueue class of JDK. In handler.handle(null), the event which is null in this case is put in LinkedBlockingQueue , without checking whether the event is null or not. eventQueue.put(event);line 188 of org.apache.hadoop.yarn.event.AsyncDispatcher. One solution could be to check for null when event is put in eventQueue below. if(event != null){ eventQueue.put(event); }else{ LOG.warn("Event cannot be null"+event); } > NPE at AsyncDispatcher$GenericEventHandler > ------------------------------------------ > > Key: YARN-505 > URL: https://issues.apache.org/jira/browse/YARN-505 > Project: Hadoop YARN > Issue Type: Improvement > Components: resourcemanager > Affects Versions: 3.0.0 > Reporter: Przemyslaw Pretki > Priority: Minor > > Steps to reproduce: > {code} > @Test > public void testAsyncDispatcher() > { > AsyncDispatcher dispatcher = new AsyncDispatcher(); > EventHandler handler = dispatcher.getEventHandler(); > handler.handle(null); > } > {code} > Moreover, event taken from *BlockingQueue* will never be *null*, so that it > seems that the following condition is not necessary > (AsyncDispatcher.createThread() method): > {code} > if (event != null) { > dispatch(event); > } > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira