]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
tests/10ddf-fail-spare: new unit test
authormwilck@arcor.de <mwilck@arcor.de>
Mon, 5 Aug 2013 20:37:49 +0000 (22:37 +0200)
committerNeilBrown <neilb@suse.de>
Mon, 5 Aug 2013 23:54:42 +0000 (09:54 +1000)
This is Albert Pauw's latest test. Note that this FAILS.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
tests/10ddf-fail-spare [new file with mode: 0644]

diff --git a/tests/10ddf-fail-spare b/tests/10ddf-fail-spare
new file mode 100644 (file)
index 0000000..60e8110
--- /dev/null
@@ -0,0 +1,37 @@
+# sanity check array creation
+. tests/env-ddf-template
+
+mdadm --zero-superblock $dev8 $dev9 $dev10 $dev11 $dev12 $dev13
+mdadm -CR $container -e ddf -l container -n 5 $dev8 $dev9 $dev10 $dev11 $dev12
+
+mdadm -CR $member0 -l raid1 -n 2 $container >/tmp/mdmon.txt 2>&1
+#$dir/mdadm -CR $member0 -l raid1 -n 2 $container >/tmp/mdmon.txt 2>&1
+
+check wait
+
+set -- $(get_raiddisks $member0)
+fail0=$1
+mdadm -f $member0 $fail0
+
+# need to sleep shortly here, to give monitor some time to active the spare
+sleep 0.5
+check wait
+
+if mdadm -CR $member1 -l raid5 -n 3 $container; then
+   echo error: create should have failed
+   set -- $(get_raiddisks $member0)
+   d0=$1
+   set -- $(get_raiddisks $member1)
+   d1=$1
+   cat /proc/mdstat
+   mdadm -E $d0
+   mdadm -E $d1
+   mdadm -E $fail0
+   rv=1
+#   cat /tmp/mdmon.txt
+else
+   rv=0
+fi
+
+#  rm -f /tmp/mdmon.txt
+exit $rv