]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - tests/zfs-tests/tests/functional/alloc_class/alloc_class_013_pos.ksh
Vendor import of openzfs master @ 184df27eef0abdc7ab2105b21257f753834b936b
[FreeBSD/FreeBSD.git] / tests / zfs-tests / tests / functional / alloc_class / alloc_class_013_pos.ksh
1 #!/bin/ksh -p
2
3 #
4 # This file and its contents are supplied under the terms of the
5 # Common Development and Distribution License ("CDDL"), version 1.0.
6 # You may only use this file in accordance with the terms of version
7 # 1.0 of the CDDL.
8 #
9 # A full copy of the text of the CDDL should have accompanied this
10 # source.  A copy of the CDDL is also available via the Internet at
11 # http://www.illumos.org/license/CDDL.
12 #
13
14 #
15 # Copyright (c) 2018 by Delphix. All rights reserved.
16 #
17
18 . $STF_SUITE/tests/functional/alloc_class/alloc_class.kshlib
19
20 #
21 # DESCRIPTION:
22 #       Removing a dedup device from a pool succeeds.
23 #
24
25 verify_runnable "global"
26
27 claim="Removing a dedup device from a pool succeeds."
28
29 log_assert $claim
30 log_onexit cleanup
31
32 #
33 # Create a non-raidz pool so we can remove top-level vdevs
34 #
35 log_must disk_setup
36 log_must zpool create $TESTPOOL $ZPOOL_DISKS dedup $CLASS_DISK0
37 log_must display_status "$TESTPOOL"
38
39 #
40 # Generate some dedup data in the dedup class before removal
41 #
42
43 log_must zfs create -o dedup=on -V 2G $TESTPOOL/$TESTVOL
44
45 log_must eval "new_fs $ZVOL_DEVDIR/$TESTPOOL/$TESTVOL >/dev/null 2>&1"
46
47 sync_pool
48 log_must zpool list -v $TESTPOOL
49
50 #
51 # remove a dedup allocation vdev
52 #
53 log_must zpool remove $TESTPOOL $CLASS_DISK0
54
55 sleep 5
56 log_must sync_pool $TESTPOOL
57 sleep 1
58
59 log_must zdb -bbcc $TESTPOOL
60
61 log_must zpool destroy -f "$TESTPOOL"
62
63 log_pass $claim