[ https://issues.apache.org/jira/browse/HDFS-14542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16856394#comment-16856394 ]
Jinglun commented on HDFS-14542: -------------------------------- Hi [~ayushtkn], seems you don't understand. *In the present code, when the storage type quota is not set,* *it won't check only once and return*. *It will check 5 times!* Because DirectoryWithQuotaFeature.quota.tsCounts.counters is a long array with 5 elements and that's where the iteration happens. The code below is where the iteration happens and counter=new long[5]; It will check 5 times right? {code:java} class EnumCounters { public boolean anyGreaterOrEqual(long val) { for (long c: counters) { if (c >= val) { return true; } } return false; } }{code} > Remove redundant code when verify quota > --------------------------------------- > > Key: HDFS-14542 > URL: https://issues.apache.org/jira/browse/HDFS-14542 > Project: Hadoop HDFS > Issue Type: Improvement > Affects Versions: 3.1.1 > Reporter: Jinglun > Assignee: Jinglun > Priority: Minor > Attachments: HDFS-14542.patch > > > DirectoryWithQuotaFeature.verifyQuotaByStorageType() does the job of > verifying quota. It's redundant to call isQuotaByStorageTypeSet() because the > for each iterator nextline has done the same job. > {code:java} > private void verifyQuotaByStorageType(EnumCounters<StorageType> typeDelta) > throws QuotaByStorageTypeExceededException { > if (!isQuotaByStorageTypeSet()) { // REDUNDANT. > return; > } > for (StorageType t: StorageType.getTypesSupportingQuota()) { > if (!isQuotaByStorageTypeSet(t)) { // CHECK FOR EACH STORAGETYPE. > continue; > } > if (Quota.isViolated(quota.getTypeSpace(t), usage.getTypeSpace(t), > typeDelta.get(t))) { > throw new QuotaByStorageTypeExceededException( > quota.getTypeSpace(t), usage.getTypeSpace(t) + typeDelta.get(t), t); > } > } > } > {code} -- 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