11ba4a712SPawel Jakub Dawidek#!/bin/sh 21ba4a712SPawel Jakub Dawidek# $FreeBSD$ 31ba4a712SPawel Jakub Dawidek 41ba4a712SPawel Jakub Dawidekdir=`dirname $0` 51ba4a712SPawel Jakub Dawidek. ${dir}/../../misc.sh 61ba4a712SPawel Jakub Dawidek 71ba4a712SPawel Jakub Dawidekecho "1..34" 81ba4a712SPawel Jakub Dawidek 91ba4a712SPawel Jakub Dawidekdisks_create 6 101ba4a712SPawel Jakub Dawideknames_create 1 111ba4a712SPawel Jakub Dawidek 121ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} create ${name0} ${disk0} log ${disk1} 131ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk1} ${disk2} 141ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 151ba4a712SPawel Jakub Dawidekexp=`( 161ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 171ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 181ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 191ba4a712SPawel Jakub Dawidek echo "config:" 201ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 211ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 221ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 231ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 241ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 251ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 261ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 271ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 281ba4a712SPawel Jakub Dawidek)` 291ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 301ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk1} ${disk3} 311ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 321ba4a712SPawel Jakub Dawidekexp=`( 331ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 341ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 351ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 361ba4a712SPawel Jakub Dawidek echo "config:" 371ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 381ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 391ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 401ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 411ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 421ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 431ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 441ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 451ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 461ba4a712SPawel Jakub Dawidek)` 471ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 481ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk3} ${disk4} 491ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 501ba4a712SPawel Jakub Dawidekexp=`( 511ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 521ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 531ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 541ba4a712SPawel Jakub Dawidek echo "config:" 551ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 561ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 571ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 581ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 591ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 601ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 611ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 621ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 631ba4a712SPawel Jakub Dawidek echo " ${disk4} ONLINE 0 0 0" 641ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 651ba4a712SPawel Jakub Dawidek)` 661ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 671ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} detach ${name0} ${disk1} 681ba4a712SPawel Jakub Dawidekexp=`( 691ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 701ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 711ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 721ba4a712SPawel Jakub Dawidek echo "config:" 731ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 741ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 751ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 761ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 771ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 781ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 791ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 801ba4a712SPawel Jakub Dawidek echo " ${disk4} ONLINE 0 0 0" 811ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 821ba4a712SPawel Jakub Dawidek)` 831ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 841ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} detach ${name0} ${disk3} 851ba4a712SPawel Jakub Dawidekexp=`( 861ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 871ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 881ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 891ba4a712SPawel Jakub Dawidek echo "config:" 901ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 911ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 921ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 931ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 941ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 951ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 961ba4a712SPawel Jakub Dawidek echo " ${disk4} ONLINE 0 0 0" 971ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 981ba4a712SPawel Jakub Dawidek)` 991ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1001ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} detach ${name0} ${disk4} 1011ba4a712SPawel Jakub Dawidekexp=`( 1021ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1031ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1041ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 1051ba4a712SPawel Jakub Dawidek echo "config:" 1061ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1071ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1081ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1091ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1101ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 1111ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 1121ba4a712SPawel Jakub Dawidek)` 1131ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1141ba4a712SPawel Jakub Dawidekexpect_fl ${ZPOOL} detach ${name0} ${disk2} 1151ba4a712SPawel Jakub Dawidekexp=`( 1161ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1171ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1181ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 1191ba4a712SPawel Jakub Dawidek echo "config:" 1201ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1211ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1221ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1231ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1241ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 1251ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 1261ba4a712SPawel Jakub Dawidek)` 1271ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1281ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} destroy ${name0} 1291ba4a712SPawel Jakub Dawidekexpect_fl ${ZPOOL} status -x ${name0} 1301ba4a712SPawel Jakub Dawidek 1311ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} create ${name0} ${disk0} log ${disk1} 1321ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk1} ${disk2} 1331ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 1341ba4a712SPawel Jakub Dawidekexp=`( 1351ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1361ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1371ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 1381ba4a712SPawel Jakub Dawidek echo "config:" 1391ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1401ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1411ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1421ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1431ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 1441ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 1451ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 1461ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 1471ba4a712SPawel Jakub Dawidek)` 1481ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1491ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} export ${name0} 1501ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} import ${import_flags} ${name0} 1511ba4a712SPawel Jakub Dawidekexp=`( 1521ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1531ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1541ba4a712SPawel Jakub Dawidek echo " scrub: none requested" 1551ba4a712SPawel Jakub Dawidek echo "config:" 1561ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1571ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1581ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1591ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1601ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 1611ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 1621ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 1631ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 1641ba4a712SPawel Jakub Dawidek)` 1651ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1661ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} destroy ${name0} 1671ba4a712SPawel Jakub Dawidekexpect_fl ${ZPOOL} status -x ${name0} 1681ba4a712SPawel Jakub Dawidek 1691ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} create ${name0} ${disk0} log ${disk1} ${disk2} 1701ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk1} ${disk3} 1711ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 1721ba4a712SPawel Jakub Dawidekexp=`( 1731ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1741ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1751ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 1761ba4a712SPawel Jakub Dawidek echo "config:" 1771ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1781ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1791ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1801ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1811ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 1821ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 1831ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 1841ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 1851ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 1861ba4a712SPawel Jakub Dawidek)` 1871ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 1881ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk2} ${disk4} 1891ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 1901ba4a712SPawel Jakub Dawidekexp=`( 1911ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 1921ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 1931ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 1941ba4a712SPawel Jakub Dawidek echo "config:" 1951ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 1961ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 1971ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 1981ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 1991ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 2001ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 2011ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 2021ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 2031ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 2041ba4a712SPawel Jakub Dawidek echo " ${disk4} ONLINE 0 0 0" 2051ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 2061ba4a712SPawel Jakub Dawidek)` 2071ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 2081ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} attach ${name0} ${disk1} ${disk5} 2091ba4a712SPawel Jakub Dawidekwait_for_resilver ${name0} 2101ba4a712SPawel Jakub Dawidekexp=`( 2111ba4a712SPawel Jakub Dawidek echo " pool: ${name0}" 2121ba4a712SPawel Jakub Dawidek echo " state: ONLINE" 2131ba4a712SPawel Jakub Dawidek echo " scrub: resilver completed after [0-9]+h[0-9]+m with 0 errors on .*" 2141ba4a712SPawel Jakub Dawidek echo "config:" 2151ba4a712SPawel Jakub Dawidek echo " NAME STATE READ WRITE CKSUM" 2161ba4a712SPawel Jakub Dawidek echo " ${name0} ONLINE 0 0 0" 2171ba4a712SPawel Jakub Dawidek echo " ${disk0} ONLINE 0 0 0" 2181ba4a712SPawel Jakub Dawidek echo " logs ONLINE 0 0 0" 2191ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 2201ba4a712SPawel Jakub Dawidek echo " ${disk1} ONLINE 0 0 0" 2211ba4a712SPawel Jakub Dawidek echo " ${disk3} ONLINE 0 0 0" 2221ba4a712SPawel Jakub Dawidek echo " ${disk5} ONLINE 0 0 0" 2231ba4a712SPawel Jakub Dawidek echo " mirror ONLINE 0 0 0" 2241ba4a712SPawel Jakub Dawidek echo " ${disk2} ONLINE 0 0 0" 2251ba4a712SPawel Jakub Dawidek echo " ${disk4} ONLINE 0 0 0" 2261ba4a712SPawel Jakub Dawidek echo "errors: No known data errors" 2271ba4a712SPawel Jakub Dawidek)` 2281ba4a712SPawel Jakub Dawidekexpect "${exp}" ${ZPOOL} status ${name0} 2291ba4a712SPawel Jakub Dawidekexpect_ok ${ZPOOL} destroy ${name0} 2301ba4a712SPawel Jakub Dawidekexpect_fl ${ZPOOL} status -x ${name0} 2311ba4a712SPawel Jakub Dawidek 2321ba4a712SPawel Jakub Dawidekdisks_destroy 233