[OracleOSS] [TitleIndex] [WordIndex]

OCFS2/QuotaTest

OCFS2 Quota Test

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 quota-tools-ocfs2.tar.gz . 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).and also try to test quota in multiple nodes mode with the help of openmpi.

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.

The sanity checker can be tuned to work under 3 working mode,they are small,medium and large,which means the stress of workload.

 

2. C binaries to implement a userspace tool to check if quotactl can work well with fs kernel and schedule a multi-nodes test with the help of openmpi

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 among mult-nodes.

1.Test utility of quotactl() API.

2.Stress test with quotactl with extremely high workload.

3.Quota data sanity check after nodes' crash.(Manually).

4.Heavily test quota among nodes in parallel with the help of openmpi.


TestStatus

Kernel/Patches

Arch/Nodes

Ocfs2 Options

Testing Report

Ocfs2-Tools

Testing Tool

Date

Coverage

Latest 2.6.27 mainline kernel
Quota-patch-set-v1:patches_v1_20081025.tgz
Quota-patch-for-ocfs2-tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

x86_64/2 Nodes

/dev/sdd1
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Quota sanity check on single node:,Passed,refer to testing log:quota-sanity-check-log.tgz

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

Testing tools src:quota_tests_1031.tgz

10/31/2008

Latest 2.6.27 mainline kernel
Quota-patch-set-v1:patches_v1_20081025.tgz
Quota-patch-for-ocfs2-tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

x86_64/2 Nodes

/dev/sdd1
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Quota sanity check on single node:
oss-bug:1037
oss-bug:1038
oss-bug:1039

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

Testing tools src:quota_tests_1031.tgz

11/3/2008

Latest 2.6.27 mainline kernel
Quota-patch-set-v1:patches_v1_20081025.tgz
Quota-patch-for-ocfs2-tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

x86_64/2 Nodes

/dev/sdd1
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Quota sanity check on single node:
oss-bug:1040
oss-bug:1041
-Quota Multi-nodes testing tools dev:
quota_multi_tests.c

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

Testing tools src:quota_tests_1105.tgz

11/5/2008

Latest 2.6.27 mainline kernel
Quota-patch-set-v1:patches_v1_20081025.tgz
Quota-patch-for-ocfs2-tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

x86_64/2 Nodes

/dev/sdd1
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Quota test among multi-nodes:
oss-bug:1042
Quota Multi-nodes testing tools dev:
quota_multi_tests.c

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

Testing tools src:quota_tests_1106.tgz

11/6/2008

Latest 2.6.27 mainline kernel
Quota-patch-set-v1:patches_v1_20081025.tgz
Quota-patch-for-ocfs2-tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

x86_64/2 Nodes

/dev/sdd1
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Quota test among multi-nodes:
oss-bug:1043
Quota Multi-nodes testing tools dev:
Add 2 testcases,grace time and negative tests among nodes.
quota_multi_tests_1110.c

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch

Testing tools src:quota_tests_1110.tgz

11/10/2008

Mark's ocfs2.git tree/linux-next branch:2.6.28-rc4 kernel
Quota-patch-set-v2:patches_v3_20081121.tgz
Quota-patch-for-ocfs2-tools:
0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch
change-quotafile-names.diff

x86_64/2 Nodes

/dev/sdc5
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Sanity check for quota on ocfs2:
Verified bug 1037 1038 as fixed.
Found new bug 1044 :Hit severe oops when setting quota,it blocks the further testing.

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch and change-quotafile-names.diff

Testing tools src:quota_tests_1110.tgz

11/21/2008

Mark's ocfs2.git tree/linux-next branch:2.6.28-rc4 kernel
Quota-patch-set-v2:patches_v3_20081121.tgz + ocfs2-2.6.27-quota_write_fix.diff
Quota-patch-for-ocfs2-tools:
0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch
change-quotafile-names.diff

x86_64/2 Nodes

/dev/sdc5
Blocksize=1k/4k/32k
Clustersize=4k/32k/1M
Slots=4
Nodes=2

Sanity check for quota on ocfs2:
Verified bug 1046 as fixed.
Found new Bugs 1047 1050

Latest tools src built from git repo with quota patch for tools:0001-Implement-quota-support-to-mkfs-and-add-a-few-auxili.patch and change-quotafile-names.diff

Testing tools src:quota_tests_1110.tgz

11/21/2008

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


2011-12-23 01:01