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 25verify_runnable "global" 26 27claim="Removing a dedup device from a pool succeeds." 28 29log_assert $claim 30log_onexit cleanup 31 32# 33# Create a non-raidz pool so we can remove top-level vdevs 34# 35log_must disk_setup 36log_must zpool create $TESTPOOL $ZPOOL_DISKS dedup $CLASS_DISK0 37log_must display_status "$TESTPOOL" 38 39# 40# Generate some dedup data in the dedup class before removal 41# 42 43log_must zfs create -o dedup=on -V 2G $TESTPOOL/$TESTVOL 44block_device_wait "$ZVOL_DEVDIR/$TESTPOOL/$TESTVOL" 45log_must eval "new_fs $ZVOL_DEVDIR/$TESTPOOL/$TESTVOL >/dev/null" 46 47sync_pool 48log_must zpool list -v $TESTPOOL 49 50# 51# remove a dedup allocation vdev 52# 53log_must zpool remove $TESTPOOL $CLASS_DISK0 54 55sleep 5 56sync_pool $TESTPOOL 57sleep 1 58 59log_must zdb -bbcc $TESTPOOL 60 61log_must zpool destroy -f "$TESTPOOL" 62 63log_pass $claim 64