mds: align quota.max_bytes to 4MB or 4KB#46905
Conversation
dcdc82b to
5b4a51d
Compare
kotreshhr
left a comment
There was a problem hiding this comment.
Looks good to me otherwise.
1009aa7 to
9300826
Compare
|
@Madhu-1 would this be okay with CSI? It really simplifies our life but I don't know if it'll be okay for users on top of us. |
|
@lxbsz What happens to the quota which is already set ? |
The size from |
If quota is enforced to the exact size that is used when setting the quota, then there should not be any rounding up or down done specifically for Proposal: |
Due to the bug in the df stat we need to roundoff the subvolume size to allign with 4Mib. Note:- Minimum supported size in cephcsi is 1Mib, we dont need to take care of Kib. fixes ceph#3240 More details at ceph/ceph#46905 Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
Due to the bug in the df stat we need to round off the subvolume size to align with 4Mib. Note:- Minimum supported size in cephcsi is 1Mib, we dont need to take care of Kib. fixes ceph#3240 More details at ceph/ceph#46905 Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
@gregsfortytwo it should be fine ceph/ceph-csi#3241 should address it. |
Due to the bug in the df stat we need to round off the subvolume size to align with 4Mib. Note:- Minimum supported size in cephcsi is 1Mib, we dont need to take care of Kib. fixes ceph#3240 More details at ceph/ceph#46905 Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
Due to the bug in the df stat we need to round off the subvolume size to align with 4Mib. Note:- Minimum supported size in cephcsi is 1Mib, we dont need to take care of Kib. fixes ceph#3240 More details at ceph/ceph#46905 Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
Due to the bug in the df stat we need to round off the subvolume size to align with 4Mib. Note:- Minimum supported size in cephcsi is 1Mib, we dont need to take care of Kib. fixes #3240 More details at ceph/ceph#46905 Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
|
Rebased it to resolve the conflicts in |
|
This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved |
The quota.max_bytes must be aligned to 4MB if greater than or equal to 4MB, otherwise must align to 4KB. This will make the statfs report correct block size and total blocks, then the `df` could show expected capacity. Fixes: https://tracker.ceph.com/issues/56397 Signed-off-by: Xiubo Li <xiubli@redhat.com>
Fixes: https://tracker.ceph.com/issues/56397 Signed-off-by: Xiubo Li <xiubli@redhat.com>
For quota size less than 4KB, report the total=used=4KB,free=0 when quota is full and total=free=4KB, used=0 otherwise. This is from Kotresh's kceph's fix. Fixes: https://tracker.ceph.com/issues/56397 Signed-off-by: Xiubo Li <xiubli@redhat.com>
Fixes: https://tracker.ceph.com/issues/56397 Signed-off-by: Xiubo Li <xiubli@redhat.com>
Fixes: https://tracker.ceph.com/issues/56397 Signed-off-by: Xiubo Li <xiubli@redhat.com>
|
Rebased it to resolve the conflicts in |
| #define CEPH_4M_BLOCK_SHIFT 22 | ||
| #define CEPH_4M_BLOCK_SIZE (1 << CEPH_4M_BLOCK_SHIFT) // 4MB | ||
| #define CEPH_4K_BLOCK_SHIFT 12 | ||
| #define CEPH_4K_BLOCK_SIZE (1 << CEPH_4K_BLOCK_SHIFT) // 4KB |
There was a problem hiding this comment.
this needs a bit of correction. CEPH_4M_BLOCK_SIZE and CEPH_4K_BLOCK_SIZE are both power of 2. The comment here as well in other places say (M/K)B ( i.e power of 10) but it should be (M/K)iB. Will add this correction in the PR i raise for the affected test cases due to this patch.
* use a fixture for setup_test() * invoke test_cephfs.py with pytest Signed-off-by: Casey Bodley <cbodley@redhat.com> (cherry picked from commit 0bd813f) Conflicts: src/test/pybind/test_cephfs.py missing ceph#43546 missing ceph#46905
|
@rishabh-d-dave @lxbsz @dparmar18 Is this PR causing issues which is being fixed by #50910? If that is true, then can be revert this change since #50910 is taking time to get reviewed and tested? |
@vshankar I'm unaware of the issues caused by this PR but #50910 does solve the issues. One thing i'm concerned about reverting this PR is it might break #50910 since xiubo might've edited the code there that was added by this PR and it might be cumbersome to compare and fix the PR. I think we can prioritise that PR to get it merged ASAP. I can go through that PR again and approve it. |
@vshankar @rishabh-d-dave Sorry I missed Rishabh's last comment. I checked those 3 failure, they are not introduce by the pr #50910. They are just other failures that haven't fixed totally. If except those 3 failures there is no any other issue let's merge #50910 first ? I'd prefer to create a new PR to fix them instead of reverting this PR, I am afraid reverting it will break the third part APP or the upper layer ODF. |
ACK. My only concern was that quota related failures are looming around from ~4 months and they seemed to have cropped up around the time this changes got merged. If we can prioritise and get the fixes merged for quota failures, it would be good. |
Okay, sorry I didn't notice that and before I didn't see any report about the Thanks |
* use a fixture for setup_test() * invoke test_cephfs.py with pytest Signed-off-by: Casey Bodley <cbodley@redhat.com> (cherry picked from commit 0bd813f) Conflicts: src/test/pybind/test_cephfs.py missing ceph#43546 missing ceph#46905
* use a fixture for setup_test() * invoke test_cephfs.py with pytest Signed-off-by: Casey Bodley <cbodley@redhat.com> (cherry picked from commit 0bd813f) Conflicts: src/test/pybind/test_cephfs.py missing ceph#43546 missing ceph#46905
* use a fixture for setup_test() * invoke test_cephfs.py with pytest Signed-off-by: Casey Bodley <cbodley@redhat.com> (cherry picked from commit 0bd813f) Conflicts: src/test/pybind/test_cephfs.py missing ceph#43546 missing ceph#46905
* use a fixture for setup_test() * invoke test_cephfs.py with pytest Signed-off-by: Casey Bodley <cbodley@redhat.com> (cherry picked from commit 0bd813f) Conflicts: src/test/pybind/test_cephfs.py missing ceph#43546 missing ceph#46905
The quota.max_bytes must align to 4MB if it's larger than or equals
to 4MB, or must align to 4KB.
This will make the statfs report correct block size and total blocks,
then the
dfcould show expected capacity.Signed-off-by: Xiubo Li xiubli@redhat.com
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "pacific"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windows