1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21 22# 23# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26 27# 28# Copyright (c) 2012 by Delphix. All rights reserved. 29# 30 31. $STF_SUITE/include/libtest.shlib 32 33# The following variable names describe files, stored as gzip compressed files 34# in the test directory which can be used to construct a pool of a given 35# version. The variable names are important, in that the construction 36# ZPOOL_VERSION_$var_FILES describes the files the pool is made from, and 37# ZPOOL_VERSION_$var_NAME describes the pool name. 38 39# Version 1 pools 40export ZPOOL_VERSION_1_FILES="zfs-pool-v1.dat" 41export ZPOOL_VERSION_1_NAME="v1-pool" 42# v1 stripe 43export ZPOOL_VERSION_1stripe_FILES="zfs-pool-v1stripe1.dat \ 44zfs-pool-v1stripe2.dat zfs-pool-v1stripe3.dat" 45export ZPOOL_VERSION_1stripe_NAME="pool-v1stripe" 46# v1 raidz 47export ZPOOL_VERSION_1raidz_FILES="zfs-pool-v1raidz1.dat zfs-pool-v1raidz2.dat \ 48zfs-pool-v1raidz3.dat" 49export ZPOOL_VERSION_1raidz_NAME="pool-v1raidz" 50# v1 mirror 51export ZPOOL_VERSION_1mirror_FILES="zfs-pool-v1mirror1.dat \ 52zfs-pool-v1mirror2.dat zfs-pool-v1mirror3.dat" 53export ZPOOL_VERSION_1mirror_NAME="pool-v1mirror" 54 55 56# Version 2 pools 57export ZPOOL_VERSION_2_FILES="zfs-pool-v2.dat" 58export ZPOOL_VERSION_2_NAME="v2-pool" 59# v2 stripe 60export ZPOOL_VERSION_2stripe_FILES="zfs-pool-v2stripe1.dat \ 61zfs-pool-v2stripe2.dat zfs-pool-v2stripe3.dat" 62export ZPOOL_VERSION_2stripe_NAME="pool-v2stripe" 63# v2 raidz 64export ZPOOL_VERSION_2raidz_FILES="zfs-pool-v2raidz1.dat zfs-pool-v2raidz2.dat \ 65zfs-pool-v2raidz3.dat" 66export ZPOOL_VERSION_2raidz_NAME="pool-v2raidz" 67# v2 mirror 68export ZPOOL_VERSION_2mirror_FILES="zfs-pool-v2mirror1.dat \ 69zfs-pool-v2mirror2.dat zfs-pool-v2mirror3.dat" 70export ZPOOL_VERSION_2mirror_NAME="pool-v2mirror" 71 72 73# This is a v3 pool 74export ZPOOL_VERSION_3_FILES="zfs-pool-v3.dat" 75export ZPOOL_VERSION_3_NAME="v3-pool" 76# v3 stripe 77export ZPOOL_VERSION_3stripe_FILES="zfs-pool-v3stripe1.dat \ 78zfs-pool-v3stripe2.dat zfs-pool-v3stripe3.dat" 79export ZPOOL_VERSION_3stripe_NAME="pool-v3stripe" 80# v3 raidz 81export ZPOOL_VERSION_3raidz_FILES="zfs-pool-v3raidz1.dat zfs-pool-v3raidz2.dat \ 82zfs-pool-v3raidz3.dat" 83export ZPOOL_VERSION_3raidz_NAME="pool-v3raidz" 84# v3 mirror 85export ZPOOL_VERSION_3mirror_FILES="zfs-pool-v3mirror1.dat \ 86zfs-pool-v3mirror2.dat zfs-pool-v3mirror3.dat" 87export ZPOOL_VERSION_3mirror_NAME="pool-v3mirror" 88# v3 raidz2 89export ZPOOL_VERSION_3dblraidz_FILES="zfs-pool-v3raidz21.dat \ 90zfs-pool-v3raidz22.dat zfs-pool-v3raidz23.dat" 91export ZPOOL_VERSION_3dblraidz_NAME="pool-v3raidz2" 92# v3 hotspares 93export ZPOOL_VERSION_3hotspare_FILES="zfs-pool-v3hotspare1.dat \ 94zfs-pool-v3hotspare2.dat zfs-pool-v3hotspare3.dat" 95export ZPOOL_VERSION_3hotspare_NAME="pool-v3hotspare" 96 97# v4 pool 98export ZPOOL_VERSION_4_FILES="zfs-pool-v4.dat" 99export ZPOOL_VERSION_4_NAME="v4-pool" 100 101# v5 pool 102export ZPOOL_VERSION_5_FILES="zfs-pool-v5.dat" 103export ZPOOL_VERSION_5_NAME="v5-pool" 104 105# v6 pool 106export ZPOOL_VERSION_6_FILES="zfs-pool-v6.dat" 107export ZPOOL_VERSION_6_NAME="v6-pool" 108 109# v7 pool 110export ZPOOL_VERSION_7_FILES="zfs-pool-v7.dat" 111export ZPOOL_VERSION_7_NAME="v7-pool" 112 113# v8 pool 114export ZPOOL_VERSION_8_FILES="zfs-pool-v8.dat" 115export ZPOOL_VERSION_8_NAME="v8-pool" 116 117# v9 pool 118export ZPOOL_VERSION_9_FILES="zfs-pool-v9.dat" 119export ZPOOL_VERSION_9_NAME="v9-pool" 120 121# v10 pool 122export ZPOOL_VERSION_10_FILES="zfs-pool-v10.dat" 123export ZPOOL_VERSION_10_NAME="v10-pool" 124 125# v11 pool 126export ZPOOL_VERSION_11_FILES="zfs-pool-v11.dat" 127export ZPOOL_VERSION_11_NAME="v11-pool" 128 129# v12 pool 130export ZPOOL_VERSION_12_FILES="zfs-pool-v12.dat" 131export ZPOOL_VERSION_12_NAME="v12-pool" 132 133# v13 pool 134export ZPOOL_VERSION_13_FILES="zfs-pool-v13.dat" 135export ZPOOL_VERSION_13_NAME="v13-pool" 136 137# v14 pool 138export ZPOOL_VERSION_14_FILES="zfs-pool-v14.dat" 139export ZPOOL_VERSION_14_NAME="v14-pool" 140 141# v15 pool 142export ZPOOL_VERSION_15_FILES="zfs-pool-v15.dat" 143export ZPOOL_VERSION_15_NAME="v15-pool" 144 145# This pool is a v2 pool, with device problems on one side of the mirror 146# so that the pool appears as DEGRADED 147export ZPOOL_VERSION_2brokenmirror_FILES="zfs-broken-mirror1.dat \ 148zfs-broken-mirror2.dat" 149export ZPOOL_VERSION_2brokenmirror_NAME="zfs-broken-mirror" 150 151 152# This pool is a v999 pool (an unknown version) which can be used to check 153# whether upgrade, import or other tests that should fail against unknown 154# pool versions should fail. It should not be listed in the CONFIGS 155# variable below, as these are pool versions that can be imported and upgraded 156export ZPOOL_VERSION_9999_FILES="zfs-pool-v999.dat" 157export ZPOOL_VERSION_9999_NAME="v999-pool" 158 159 160# This is a list of pool configurations we should be able to upgrade from, 161# each entry should have corresponding ZPOOL_VERSION_*_FILES and 162# ZPOOL_VERSION_*_NAME variables defined above. 163export CONFIGS="1 1stripe 1raidz 1mirror \ 1642 2stripe 2raidz 2mirror 2brokenmirror \ 1653 3stripe 3raidz 3mirror 3dblraidz 3hotspare 4 5 6 7 8 9 10 11 12 13 14 15" 166