bharatviswa504 commented on pull request #1677:
URL: https://github.com/apache/ozone/pull/1677#issuecomment-745413945


   > > Example:
   > > V1 - 100 MB
   > > V1/B1 - 50MB
   > > V1/B2- 50MB
   > > Now clear quota on V1/B2 we set quota of V1/B2 to -1, and now a new 
bucket can be still created in this volume?
   > > New Bucket created with quota 50MB. (V1/B3)
   > > So, in this volume there are 3 buckets, only 2 are considered in to 
count, as clearQuota is run(on V1/B2), and we are not considering this bucket 
in quota calculations, so this bucket will not be counted under quota, but for 
volume we have crossed the quota of that volume. (As user has run clear quota 
on V1/B2)
   > > So, here clear quota means resetting the quota to -1? Or what is the 
real purpose of this clearQuota usage on clusters, in what scenarios this will 
be useful on the cluster?
   > 
   > Thanks to @bharatviswa504‘s advice, you found a very important point.
   > Before [HDDS-4308](https://issues.apache.org/jira/browse/HDDS-4308), we 
had usedBytes in volume, so before writing the key, we checked both bucket 
quota and volume quota. Setting bucket quota to -1 alone at this point does not 
matter, since we are able to ensure that usedBytes do not exceed volume quota.
   > But we can't do that now because volume doesn't have usedBytes. I created 
a new JIRA [HDDS-4588](https://issues.apache.org/jira/browse/HDDS-4588) to fix 
this problem. If volume's quota is enabled then bucket's quota cannot be 
cleared. We need to prompt the user to clear volume quota first.
   > 
   > > But I don't see any guards in the cluster to not allow quota operations 
for older buckets/volumes.
   > > And also do you think, we need to document this in our docs?
   > 
   > I’ll refine the docs to make it clear that older volumes/buckets are not 
recommended to use quota.
   
   So, now if the volume quota is not set, the bucket Clearspace quota is just 
disabling quota on the buckets.
   
   And also just setting quota at volume level will not be counted, until 
bucket level quotas are set.
   
   For my understanding so volume quota is set, and bucket quota is set, 
clearing volume quota is just set to -1, so that now quota is tracked at bucket 
level. And now when bucket quota is cleared, when volume quota is set, we 
disallow the operation.
   This will be the behavior of clear space quota, let me know if i am missing 
something.
    
   > But we can't do that now because volume doesn't have usedBytes. I created 
a new JIRA [HDDS-4588 
   >(https://issues.apache.org/jira/browse/HDDS-4588) to fix this problem. If 
volume's quota is enabled then bucket's quota >cannot be cleared. We need to 
prompt the user to clear volume quota first.
   
   Now the example mentioned scenarios will not happen. Thanks for opening this 
Jira and tracking this issue.
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to