7614 zfs device evacuation/removal
[unleashed.git] / usr / src / test / zfs-tests / tests / functional / removal / removal_with_dedup.ksh
blob4b6c94a80193b80dea269183ac7f80d2b37cd374
1 #! /bin/ksh -p
3 # CDDL HEADER START
5 # This file and its contents are supplied under the terms of the
6 # Common Development and Distribution License ("CDDL"), version 1.0.
7 # You may only use this file in accordance with the terms of version
8 # 1.0 of the CDDL.
10 # A full copy of the text of the CDDL should have accompanied this
11 # source. A copy of the CDDL is also available via the Internet at
12 # http://www.illumos.org/license/CDDL.
14 # CDDL HEADER END
18 # Copyright (c) 2014, 2016 by Delphix. All rights reserved.
21 . $STF_SUITE/include/libtest.shlib
22 . $STF_SUITE/tests/functional/removal/removal.kshlib
24 default_setup_noexit "$DISKS"
25 log_onexit default_cleanup_noexit
27 log_must zfs set dedup=on $TESTPOOL
29 FILE_CONTENTS="Leeloo Dallas mul-ti-pass."
31 echo $FILE_CONTENTS >$TESTDIR/$TESTFILE0
32 echo $FILE_CONTENTS >$TESTDIR/$TESTFILE1
33 echo $FILE_CONTENTS >$TESTDIR/$TESTFILE2
34 log_must [ "x$(cat $TESTDIR/$TESTFILE0)" = "x$FILE_CONTENTS" ]
35 log_must [ "x$(cat $TESTDIR/$TESTFILE1)" = "x$FILE_CONTENTS" ]
36 log_must [ "x$(cat $TESTDIR/$TESTFILE2)" = "x$FILE_CONTENTS" ]
38 log_must zpool remove $TESTPOOL $REMOVEDISK
39 log_must wait_for_removal $TESTPOOL
40 log_mustnot vdevs_in_pool $TESTPOOL $REMOVEDISK
42 log_must dd if=/$TESTDIR/$TESTFILE0 of=/dev/null
43 log_must dd if=/$TESTDIR/$TESTFILE1 of=/dev/null
44 log_must dd if=/$TESTDIR/$TESTFILE2 of=/dev/null
45 log_must [ "x$(cat $TESTDIR/$TESTFILE0)" = "x$FILE_CONTENTS" ]
46 log_must [ "x$(cat $TESTDIR/$TESTFILE1)" = "x$FILE_CONTENTS" ]
47 log_must [ "x$(cat $TESTDIR/$TESTFILE2)" = "x$FILE_CONTENTS" ]
49 log_pass "Removed device not in use after removal."