[ https://issues.apache.org/jira/browse/HDFS-13155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16499574#comment-16499574 ]
Wei-Chiu Chuang commented on HDFS-13155: ---------------------------------------- +1 > BlockPlacementPolicyDefault.chooseTargetInOrder Not Checking Return Value for > NULL > ---------------------------------------------------------------------------------- > > Key: HDFS-13155 > URL: https://issues.apache.org/jira/browse/HDFS-13155 > Project: Hadoop HDFS > Issue Type: Improvement > Components: namenode > Affects Versions: 3.0.0 > Reporter: BELUGA BEHR > Assignee: Zsolt Venczel > Priority: Minor > Attachments: HDFS-13155.01.patch, HDFS-13155.02.patch > > > {code:title=BlockPlacementPolicyDefault.java} > protected Node chooseTargetInOrder(int numOfReplicas, > Node writer, > final Set<Node> excludedNodes, > final long blocksize, > final int maxNodesPerRack, > final List<DatanodeStorageInfo> results, > final boolean avoidStaleNodes, > final boolean newBlock, > EnumMap<StorageType, Integer> storageTypes) > throws NotEnoughReplicasException { > final int numOfResults = results.size(); > if (numOfResults == 0) { > writer = chooseLocalStorage(writer, excludedNodes, blocksize, > maxNodesPerRack, results, avoidStaleNodes, storageTypes, true) > .getDatanodeDescriptor(); > if (--numOfReplicas == 0) { > return writer; > } > } > ... > {code} > The method {{chooseLocalStorage}} can return a _null_ value but it's not > being checked here and the method {{getDatanodeDescriptor()}} is immediately > being called on the result. Please check for a _null_ value first. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org