1#!/bin/sh
2
3dir=`dirname $0`
4. ${dir}/../../misc.sh
5
6echo "1..40"
7
8disks_create 5
9names_create 1
10
11expect_ok ${ZPOOL} create ${name0} ${disk0}
12expect_fl ${ZPOOL} add ${name0} mirror ${disk1} ${disk2}
13exp=`(
14  echo "  pool: ${name0}"
15  echo " state: ONLINE"
16  echo " scrub: none requested"
17  echo "config:"
18  echo "	NAME        STATE   READ WRITE CKSUM"
19  echo "	${name0}    ONLINE     0     0     0"
20  echo "	  ${disk0}  ONLINE     0     0     0"
21  echo "errors: No known data errors"
22)`
23expect "${exp}" ${ZPOOL} status ${name0}
24expect_ok ${ZPOOL} destroy ${name0}
25expect_fl ${ZPOOL} status -x ${name0}
26
27expect_ok ${ZPOOL} create ${name0} ${disk0}
28expect_ok ${ZPOOL} add -f ${name0} mirror ${disk1} ${disk2}
29exp=`(
30  echo "  pool: ${name0}"
31  echo " state: ONLINE"
32  echo " scrub: none requested"
33  echo "config:"
34  echo "	NAME          STATE   READ WRITE CKSUM"
35  echo "	${name0}      ONLINE     0     0     0"
36  echo "	  ${disk0}    ONLINE     0     0     0"
37  echo "	  mirror      ONLINE     0     0     0"
38  echo "	    ${disk1}  ONLINE     0     0     0"
39  echo "	    ${disk2}  ONLINE     0     0     0"
40  echo "errors: No known data errors"
41)`
42expect "${exp}" ${ZPOOL} status ${name0}
43expect_ok ${ZPOOL} destroy ${name0}
44expect_fl ${ZPOOL} status -x ${name0}
45
46expect_ok ${ZPOOL} create ${name0} ${disk0}
47expect_fl ${ZPOOL} add ${name0} raidz ${disk1} ${disk2} ${disk3}
48exp=`(
49  echo "  pool: ${name0}"
50  echo " state: ONLINE"
51  echo " scrub: none requested"
52  echo "config:"
53  echo "	NAME        STATE   READ WRITE CKSUM"
54  echo "	${name0}    ONLINE     0     0     0"
55  echo "	  ${disk0}  ONLINE     0     0     0"
56  echo "errors: No known data errors"
57)`
58expect "${exp}" ${ZPOOL} status ${name0}
59expect_ok ${ZPOOL} destroy ${name0}
60expect_fl ${ZPOOL} status -x ${name0}
61
62expect_ok ${ZPOOL} create ${name0} ${disk0}
63expect_ok ${ZPOOL} add -f ${name0} raidz ${disk1} ${disk2} ${disk3}
64exp=`(
65  echo "  pool: ${name0}"
66  echo " state: ONLINE"
67  echo " scrub: none requested"
68  echo "config:"
69  echo "	NAME          STATE   READ WRITE CKSUM"
70  echo "	${name0}      ONLINE     0     0     0"
71  echo "	  ${disk0}    ONLINE     0     0     0"
72  echo "	  raidz1      ONLINE     0     0     0"
73  echo "	    ${disk1}  ONLINE     0     0     0"
74  echo "	    ${disk2}  ONLINE     0     0     0"
75  echo "	    ${disk3}  ONLINE     0     0     0"
76  echo "errors: No known data errors"
77)`
78expect "${exp}" ${ZPOOL} status ${name0}
79expect_ok ${ZPOOL} destroy ${name0}
80expect_fl ${ZPOOL} status -x ${name0}
81
82expect_ok ${ZPOOL} create ${name0} ${disk0}
83expect_fl ${ZPOOL} add ${name0} raidz2 ${disk1} ${disk2} ${disk3} ${disk4}
84exp=`(
85  echo "  pool: ${name0}"
86  echo " state: ONLINE"
87  echo " scrub: none requested"
88  echo "config:"
89  echo "	NAME        STATE   READ WRITE CKSUM"
90  echo "	${name0}    ONLINE     0     0     0"
91  echo "	  ${disk0}  ONLINE     0     0     0"
92  echo "errors: No known data errors"
93)`
94expect "${exp}" ${ZPOOL} status ${name0}
95expect_ok ${ZPOOL} destroy ${name0}
96expect_fl ${ZPOOL} status -x ${name0}
97
98expect_ok ${ZPOOL} create ${name0} ${disk0}
99expect_ok ${ZPOOL} add -f ${name0} raidz2 ${disk1} ${disk2} ${disk3} ${disk4}
100exp=`(
101  echo "  pool: ${name0}"
102  echo " state: ONLINE"
103  echo " scrub: none requested"
104  echo "config:"
105  echo "	NAME          STATE   READ WRITE CKSUM"
106  echo "	${name0}      ONLINE     0     0     0"
107  echo "	  ${disk0}    ONLINE     0     0     0"
108  echo "	  raidz2      ONLINE     0     0     0"
109  echo "	    ${disk1}  ONLINE     0     0     0"
110  echo "	    ${disk2}  ONLINE     0     0     0"
111  echo "	    ${disk3}  ONLINE     0     0     0"
112  echo "	    ${disk4}  ONLINE     0     0     0"
113  echo "errors: No known data errors"
114)`
115expect "${exp}" ${ZPOOL} status ${name0}
116expect_ok ${ZPOOL} destroy ${name0}
117expect_fl ${ZPOOL} status -x ${name0}
118
119expect_ok ${ZPOOL} create ${name0} ${disk0} log ${disk1}
120add_msg="# TODO Sun CR 6726091, Lustre bug 16873"
121expect_fl ${ZPOOL} add ${name0} log mirror ${disk2} ${disk3}
122exp=`(
123  echo "  pool: ${name0}"
124  echo " state: ONLINE"
125  echo " scrub: none requested"
126  echo "config:"
127  echo "	NAME        STATE   READ WRITE CKSUM"
128  echo "	${name0}    ONLINE     0     0     0"
129  echo "	  ${disk0}  ONLINE     0     0     0"
130  echo "	logs        ONLINE     0     0     0"
131  echo "	  ${disk1}  ONLINE     0     0     0"
132  echo "errors: No known data errors"
133)`
134expect "${exp}" ${ZPOOL} status ${name0}
135add_msg=""
136expect_ok ${ZPOOL} destroy ${name0}
137expect_fl ${ZPOOL} status -x ${name0}
138
139expect_ok ${ZPOOL} create ${name0} ${disk0} log ${disk1}
140expect_ok ${ZPOOL} add -f ${name0} log mirror ${disk2} ${disk3}
141exp=`(
142  echo "  pool: ${name0}"
143  echo " state: ONLINE"
144  echo " scrub: none requested"
145  echo "config:"
146  echo "	NAME          STATE   READ WRITE CKSUM"
147  echo "	${name0}      ONLINE     0     0     0"
148  echo "	  ${disk0}    ONLINE     0     0     0"
149  echo "	logs          ONLINE     0     0     0"
150  echo "	  ${disk1}    ONLINE     0     0     0"
151  echo "	  mirror      ONLINE     0     0     0"
152  echo "	    ${disk2}  ONLINE     0     0     0"
153  echo "	    ${disk3}  ONLINE     0     0     0"
154  echo "errors: No known data errors"
155)`
156expect "${exp}" ${ZPOOL} status ${name0}
157expect_ok ${ZPOOL} destroy ${name0}
158expect_fl ${ZPOOL} status -x ${name0}
159
160disks_destroy
161