1f38cb554SJohn Wren Kennedy#!/bin/ksh -p 2f38cb554SJohn Wren Kennedy# 3f38cb554SJohn Wren Kennedy# CDDL HEADER START 4f38cb554SJohn Wren Kennedy# 5f38cb554SJohn Wren Kennedy# The contents of this file are subject to the terms of the 6f38cb554SJohn Wren Kennedy# Common Development and Distribution License (the "License"). 7f38cb554SJohn Wren Kennedy# You may not use this file except in compliance with the License. 8f38cb554SJohn Wren Kennedy# 9f38cb554SJohn Wren Kennedy# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10f38cb554SJohn Wren Kennedy# or http://www.opensolaris.org/os/licensing. 11f38cb554SJohn Wren Kennedy# See the License for the specific language governing permissions 12f38cb554SJohn Wren Kennedy# and limitations under the License. 13f38cb554SJohn Wren Kennedy# 14f38cb554SJohn Wren Kennedy# When distributing Covered Code, include this CDDL HEADER in each 15f38cb554SJohn Wren Kennedy# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16f38cb554SJohn Wren Kennedy# If applicable, add the following below this CDDL HEADER, with the 17f38cb554SJohn Wren Kennedy# fields enclosed by brackets "[]" replaced with your own identifying 18f38cb554SJohn Wren Kennedy# information: Portions Copyright [yyyy] [name of copyright owner] 19f38cb554SJohn Wren Kennedy# 20f38cb554SJohn Wren Kennedy# CDDL HEADER END 21f38cb554SJohn Wren Kennedy# 22f38cb554SJohn Wren Kennedy 23f38cb554SJohn Wren Kennedy# 24f38cb554SJohn Wren Kennedy# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 25f38cb554SJohn Wren Kennedy# Use is subject to license terms. 26f38cb554SJohn Wren Kennedy# 27f38cb554SJohn Wren Kennedy 28f38cb554SJohn Wren Kennedy# 291d32ba66SJohn Wren Kennedy# Copyright (c) 2013, 2016 by Delphix. All rights reserved. 30f38cb554SJohn Wren Kennedy# 31f38cb554SJohn Wren Kennedy 32f38cb554SJohn Wren Kennedy. $STF_SUITE/tests/functional/slog/slog.kshlib 33f38cb554SJohn Wren Kennedy 34f38cb554SJohn Wren Kennedy# 35f38cb554SJohn Wren Kennedy# DESCRIPTION: 36f38cb554SJohn Wren Kennedy# Replacing a log device passes. 37f38cb554SJohn Wren Kennedy# 38f38cb554SJohn Wren Kennedy# STRATEGY: 39f38cb554SJohn Wren Kennedy# 1. Create pool with log devices. 40f38cb554SJohn Wren Kennedy# 2. Replacing one log device 41f38cb554SJohn Wren Kennedy# 3. Display pool status 42f38cb554SJohn Wren Kennedy# 4. Destroy and loop to create pool with different configuration. 43f38cb554SJohn Wren Kennedy# 44f38cb554SJohn Wren Kennedy 45f38cb554SJohn Wren Kennedyverify_runnable "global" 46f38cb554SJohn Wren Kennedy 47f38cb554SJohn Wren Kennedylog_assert "Replacing a log device passes." 48f38cb554SJohn Wren Kennedylog_onexit cleanup 49*d8849d7dSChunwei Chenlog_must setup 50f38cb554SJohn Wren Kennedy 51f38cb554SJohn Wren Kennedyfor type in "" "mirror" "raidz" "raidz2" 52f38cb554SJohn Wren Kennedydo 53f38cb554SJohn Wren Kennedy for spare in "" "spare" 54f38cb554SJohn Wren Kennedy do 55f38cb554SJohn Wren Kennedy for logtype in "" "mirror" 56f38cb554SJohn Wren Kennedy do 571d32ba66SJohn Wren Kennedy log_must zpool create $TESTPOOL $type $VDEV \ 58f38cb554SJohn Wren Kennedy $spare $SDEV log $logtype $LDEV 59f38cb554SJohn Wren Kennedy sdev=$(random_get $LDEV) 60f38cb554SJohn Wren Kennedy tdev=$(random_get $LDEV2) 611d32ba66SJohn Wren Kennedy log_must zpool replace $TESTPOOL $sdev $tdev 62f38cb554SJohn Wren Kennedy log_must display_status $TESTPOOL 63f38cb554SJohn Wren Kennedy # sleep 15 to make sure replacement completely. 641d32ba66SJohn Wren Kennedy log_must sleep 15 65f38cb554SJohn Wren Kennedy log_must verify_slog_device \ 66f38cb554SJohn Wren Kennedy $TESTPOOL $tdev 'ONLINE' $logtype 67f38cb554SJohn Wren Kennedy 681d32ba66SJohn Wren Kennedy log_must zpool destroy -f $TESTPOOL 69f38cb554SJohn Wren Kennedy done 70f38cb554SJohn Wren Kennedy done 71f38cb554SJohn Wren Kennedydone 72f38cb554SJohn Wren Kennedy 73f38cb554SJohn Wren Kennedylog_pass "Replacing a log device passes." 74