[OracleOSS] [TitleIndex] [WordIndex]

OCFS2/TestTaskList

Basic Corruption Fix Test Suite (Completed r54 in ocfs2-test)

Owner: Gong Jie

Now that fswreck has implemented over half the corrupt codes, it is time to write a script that automates the fsck testing. Each test in the suite should make the volume, then corrupt using fswreck, followed by attempt to fix using fsck. The output from the fsck run should be heavily parsed to ensure that the fix is "exactly as expected". fsck should be run again to ensure a clean run. This test suite is to test basic functionality only. Try not to add in multiple corruptions in a test. On the other hand, the test suite should not take all day to run.

Advanced Corruption Fix Test Suite

Owner:

This is intended to handle multiple corruptions and also include simulations of actual corruptions encountered on end-users. The fsck output need not be parsed. Just ensure the volume is clean.

Random Corruption Fix Test Suite

Owner:

This is envisioned as a stress test for fsck. Randomly corrupt one or more blocks and see if fsck can fix it. To start with, the idea is not to get a clean run on each run, as much as it is to gather data as to what level of corruption the fs can handle. This will help us harden the fs in the long run.

Configurable Network Timeout Test

Owner: Marcos

The following tests will be required to test the Configurable network timeout patch:

No

Test

Expected Result

1

Load ocfs2 1.2.4 on one node and 1.2.5 on the other.

The two nodes should not be able to mount the same volume. Descriptive error message.

2

Set idle timeout of 30 secs (echo 30000 > /config/cluster/<clustername>/idle_timeout_ms) on one node and leave the other to default.

The two nodes should not be able to mount the same volume. Descriptive error message.

3

Set idle timeout to 30 secs (echo 30000 > /config/cluster/<clustername>/idle_timeout_ms) and disk timeout to 60 secs (O2CB_HEARTBEAT_THRESHOLD=31 in /etc/sysconfig/o2cb file) and mount vol on 3 nodes. ifconfig stop the private interface on one node.

Node should fence itself after 30 secs.

4

Set idle timeout to 60 secs (echo 60000 > /config/cluster/<clustername>/idle_timeout_ms) and disk timeout to 60 secs (O2CB_HEARTBEAT_THRESHOLD=31 in /etc/sysconfig/o2cb file) and mount vol on 3 nodes. ifconfig stop the private interface on one node.

Node should fence itself after 60 secs.

5

Set idle timeout to 60 secs (echo 60000 > /config/cluster/<clustername>/idle_timeout_ms) and disk timeout to 120 secs (O2CB_HEARTBEAT_THRESHOLD=61 in /etc/sysconfig/o2cb file) and mount vol on 3 nodes. ifconfig stop and start on private interface on one node.

Any process that makes use of any ocfs2 filesystem will stall until the connection is reestablished, then it should proceed normally.

6

Set idle timeout to 60 secs (echo 60000 > /config/cluster/<clustername>/idle_timeout_ms) and keepalive delay to 65 secs (echo 65000 > /config/cluster/<clustername>/keepalive_delay_ms) and mount vol on 3 nodes.

OCFS2 should issue a warning message (o2net: keepalive delay must be smaller than idle timeout) and reset the keepalive delay to 5000 ms and mount the partition.


2012-11-08 13:01