OCFS2 Quota Test
Contents
Introduction
This document aims at scheduling the testing plan against quota which we're currently implementing on Ocfs2,and also capture/record the testing result to trace the status during test where we can easily position a bug.In an addition,we also explain how all of the testcases will be organized and the workflow of their corresponding testing tool.
Testcases
For quota tests on ocfs2,we're planning to carry out 2 kinds of tests on single node,one is made up of a shell script to perform a sanity check by using a series of userspace tools such as quotacheck,quotacheck,quotaon,quota,setquota,edquota,repquota,warnquota. workload also can be added to user/group numbers,testing iterations,disk usage,inode numbers,multiple users and groups combinations etc to perform stress test somehow.
The second kind of test tools are designed by help of POSIX api quotactl() to construct all quota applications under userspace,its main goal is to check if the quotactl can work well(communicate with fs kernel from userspace).
We're not going to talk about multiple-nodes tests for quota here,since quota is somewhat user&group specific which always take effect in volumes for a local node.
1.Quota_tests.sh a shell script to perform sanity check by using a series of quota tools
1.Sanity check,including mkfs,mount a quota-supported-fs volume, quota files generating,quota setting and editing for users and groups,verification for soft,hard and grace time limitation.moreover,the sanity check should be conducted under a series of block and cluster size(-b 1k -C 4k,-b 4k -C 4k,-b 4k,-C 32k)
2.Boundary test,test user and groups with soft and hard limitaion for space usage and inode numbers.
3.Combination test,a combination number of users and groups,it will includes,one user,one group,one user and group,multiple users and multiple groups.
4.Stress test,punch the test by tuning workload extremely high for user,group numbers,space usage and inode numbers.
5. All your comments and suggestions welcome here.
2. C binaries to implement a userspace tool to check if quotactl can work well with fs kernel
The goal is mainly to implement all quota related operations in userspace by the POSIX api quotactl(),that help to check if quotactl work well with fs kernel,also attempt to pass somewhat heavy workload to kernel by this API to perform a stress test.
The test plan has not been scheduled in detail yet, all suggestions will be highly appreciated here.
TestStatus
Kernel/Patches |
Arch/Nodes |
Ocfs2 Options |
Testing Report |
Ocfs2-Tools |
Testing Tool |
Date |
Coverage |
Testing Tools
Name |
Script / Program |
Description |
Technology |
#nodes |
Useful? |
What is tested |
quota_tests |
quota_tests.sh |
This script aims at performing a sanity check on quota for ocfs2,also can be tuned a stress puncher. |
Shell |
1 |
Yes |
Perform a sanity check for quota on ocfs2,also attempt to do stress test somehow |
quotactl_test.c |
test functionality of quotactl() api |
C |
2 |
Yes |