[
https://issues.apache.org/jira/browse/HDFS-7606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14278383#comment-14278383
]
Chen He commented on HDFS-7606:
-------------------------------
To reproduce the NPE mentioned in this JIRA, in the INodeFile.getBlocks(), we
just need to satisfy " diff=null "and "snapshotBlocks=null" before line 435
starts to execute. Then the diff.getSnapshotId() will cause NPE.
> Missing null check in INodeFile#getBlocks()
> -------------------------------------------
>
> Key: HDFS-7606
> URL: https://issues.apache.org/jira/browse/HDFS-7606
> Project: Hadoop HDFS
> Issue Type: Bug
> Affects Versions: 3.0.0
> Reporter: Ted Yu
> Assignee: Byron Wong
> Priority: Minor
> Attachments: HDFS-7606.patch
>
>
> {code}
> BlockInfo[] snapshotBlocks = diff == null ? getBlocks() :
> diff.getBlocks();
> if(snapshotBlocks != null)
> return snapshotBlocks;
> // Blocks are not in the current snapshot
> // Find next snapshot with blocks present or return current file blocks
> snapshotBlocks = getDiffs().findLaterSnapshotBlocks(diff.getSnapshotId());
> {code}
> If diff is null and snapshotBlocks is null, NullPointerException would result
> from the call to diff.getSnapshotId().
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)