[ 
https://issues.apache.org/jira/browse/HDFS-7811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14366215#comment-14366215
 ] 

Xiaoyu Yao commented on HDFS-7811:
----------------------------------

Thanks [~jingzhao] for the review. 

bq. 1. In tryGetBlockStoragePolicyId, looks like getStoragePolicyID will not 
throw UnsupportedOperationException in our current code?

INodeSymlink#getStoragePolicyID throws UnsupportedOperationException.

bq. 2 We now have 4 different versions of computeQuotaUsage to support 
different parameter combinations. We can remove some of them for 
simplification. E.g.,computeQuotaUsage(BlockStoragePolicySuite, byte, 
QuotaCounts, boolean) is only called in one place.
Agree. Will remove that in the next update. 

bq. 3/4/5 In INodeFile#computeQuotaUsage, we should check if the INodeFile has 
local storage policy and if so use it to overwrite the given policy.
Agree. Will fix in the next update.

bq. 6 Minor: there are couple of places where the line length exceeds 80
Will fix in the next update.




> Avoid recursive call getStoragePolicyID in INodeFile#computeQuotaUsage
> ----------------------------------------------------------------------
>
>                 Key: HDFS-7811
>                 URL: https://issues.apache.org/jira/browse/HDFS-7811
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode, namenode
>            Reporter: Xiaoyu Yao
>            Assignee: Xiaoyu Yao
>             Fix For: 2.7.0
>
>         Attachments: HDFS-7811.00.patch
>
>
> This is a follow up based on comment from [~jingzhao] on HDFS-7723. 
> I just noticed that INodeFile#computeQuotaUsage calls getStoragePolicyID to 
> identify the storage policy id of the file. This may not be very efficient 
> (especially when we're computing the quota usage of a directory) because 
> getStoragePolicyID may recursively check the ancestral INode's storage 
> policy. I think here an improvement can be passing the lowest parent 
> directory's storage policy down while traversing the tree. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to