[ https://issues.apache.org/jira/browse/HDFS-9484?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Konstantin Shvachko updated HDFS-9484: -------------------------------------- Resolution: Fixed Hadoop Flags: Reviewed Fix Version/s: 2.8.0 Status: Resolved (was: Patch Available) I just committed this. Thank you [~liuml07]. > NNThroughputBenchmark$BlockReportStats should not send empty block reports > -------------------------------------------------------------------------- > > Key: HDFS-9484 > URL: https://issues.apache.org/jira/browse/HDFS-9484 > Project: Hadoop HDFS > Issue Type: Bug > Components: test > Reporter: Mingliang Liu > Assignee: Mingliang Liu > Fix For: 2.8.0 > > Attachments: HDFS-9484.000.patch, HDFS-9484.001.patch > > > There are two potential bugs that make the > {{NNThroughputBenchmark$BlockReportStats}} send empty block reports. > # In {{NNThroughputBenchmark$BlockReportStats#formBlockReport()}}, the > {{blockReportList}} is always {{BlockListAsLongs.EMPTY}}. We should construct > the block report list by encoding generated {{blocks}} in test. > # {{TinyDatanode#blocks}} is an empty ArrayList with initial capacity. In > {{TinyDatanode#addBlock()}} first statement, the {{if(nrBlocks == > blocks.size()) {}} will always be true. We should either fill the blocks with > dummy report in {{TinyDatanode()}} constructor, or use initial capacity > instead of {{blocks.size()}} in the above _if_ statement (we should replace > {{ArrayList#set}} with {{ArrayList#add}} as well). -- This message was sent by Atlassian JIRA (v6.3.4#6332)