Details
-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
None
-
3
-
9223372036854775807
Description
It would be worthwhile to have a simple way to find the reason of an -EDQUOT. Currently it is required to find the owner and the project of the file or directory and to execute "lfs quota" command for each quota types(usr/grp/prj). It is also required to take into account Pool Quotas that makes the situation more complicated as the user needs to look at the file striping, find appropriate OST Pool and check the quotas for that pool. It would be much more tricky to find the reason of the EDQUOT when the LQA feature will be ready. This can be sorted out by adding an option to print quota limits, granted and usage space for the owner and the project of the file. Example:
[root@vm1 ~]# lfs quota /mnt/lustre/file1 Disk quotas for usr quota_usr (uid 1000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre/ 50176 0 51200 - 1 0 0 - Disk quotas for grp quota_usr (gid 1000): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre/ 50176 0 0 - 1 0 0 - Disk quotas for prj 500 (pid 500): Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre/ 0 0 0 - 0 0 0 - Disk quotas for usr quota_usr (uid 1000) in quota pool "qpool1": Filesystem kbytes bquota blimit bgrace files iquota ilimit igrace /mnt/lustre 50176* 0 30720 - 1* 0 0 -
So the lfs utility should get the file attributes and send the regular "lfs quota" requests to the QMT and the targets for all quota types: usr, grp and project. The same should be done if any OST Pools exist in a system, i.e. "lfs quota" should get the striping and based on that find appropriate OST Pools. If "file1" has only one object at the OST0001, it should show "lfs quota --pool" for all OST pools consisting OST0001. The same should be done for the LQAs ranges when LQAs would be implemented.