[
https://issues.apache.org/jira/browse/HBASE-16398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15747183#comment-15747183
]
Ted Yu commented on HBASE-16398:
--------------------------------
{code}
1180 // lets not create more objects here, not even another
hdfsblock dist
1181 FSUtils.addToHDFSBlocksDistribution(hdfsBlocksDistribution,
{code}
Replace "hdfsblock dist" with HDFSBlocksDistribution
{code}
245 if (validate && !StoreFileInfo.isValid(status)) {
246 LOG.warn("Invalid StoreFile: " + status.getPath());
{code}
Shouldn't IOE be thrown for invalid store file ?
{code}
248 validStoreFiles.add(status);
{code}
validStoreFiles is not returned. Is that intentional ?
> optimize HRegion computeHDFSBlocksDistribution
> ----------------------------------------------
>
> Key: HBASE-16398
> URL: https://issues.apache.org/jira/browse/HBASE-16398
> Project: HBase
> Issue Type: Sub-task
> Components: regionserver
> Affects Versions: 2.0.0
> Reporter: binlijin
> Assignee: binlijin
> Fix For: 2.0.0
>
> Attachments: HBASE-16398.patch, HBASE-16398_v2.patch,
> HBASE-16398_v3.patch, HBASE-16398_v4.patch, LocatedBlockStatusComparison.java
>
>
> First i assume there is no reference and link in a region family's directory.
> Without the patch to computeHDFSBlocksDistribution for a region family, there
> is 1+2*N rpc call, N is hfile numbers, The first rpc call is to
> DistributedFileSystem#listStatus to get hfiles, for every hfile there is two
> rpc call DistributedFileSystem#getFileStatus(path) and then
> DistributedFileSystem#getFileBlockLocations(status, start, length).
> With the patch to computeHDFSBlocksDistribution for a region family, there is
> 2 rpc call, they are DistributedFileSystem#getFileStatus(path) and
> DistributedFileSystem#listLocatedStatus(final Path p, final PathFilter
> filter).
> So if there is at least one hfile, with the patch, the rpc call will less.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)