svn commit: r353360 - head/tests/sys/cddl/zfs/tests/cli_root/zpool_import
Alan Somers
asomers at FreeBSD.org
Wed Oct 9 17:24:11 UTC 2019
Author: asomers
Date: Wed Oct 9 17:24:09 2019
New Revision: 353360
URL: https://svnweb.freebsd.org/changeset/base/353360
Log:
ZFS: multiple fixes to the zpool_import tests
* Don't create a UFS mountpoint just to store some temporary files. The
tests should always be executed with a sufficiently large TMPDIR.
Creating the UFS mountpoint is not only unneccessary, but it slowed
zpool_import_missing_002_pos greatly, because that test moves large files
between TMPDIR and the UFS mountpoint. This change also allows many of
the tests to be executed with just a single test disk, instead of two.
* Move zpool_import_missing_002_pos's backup device dir from / to $PWD to
prevent cross-device moves. On my system, these two changes improved that
test's speed by 39x. It should also prevent ENOSPC errors seen in CI.
* If insufficient disks are available, don't try to partition one of them.
Just rely on Kyua to skip the test. Users who care will configure Kyua
with sufficient disks.
MFC after: 2 weeks
Sponsored by: Axcient
Modified:
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh
Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh Wed Oct 9 17:08:40 2019 (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh Wed Oct 9 17:24:09 2019 (r353360)
@@ -39,24 +39,9 @@ for pool in "$TESTPOOL" "$TESTPOOL1"; do
destroy_pool "$pool"
done
-ismounted $DEVICE_DIR ufs
-(( $? == 0 )) && log_must $UMOUNT -f $DEVICE_DIR
-
for dir in "$TESTDIR" "$TESTDIR1" "$DEVICE_DIR" ; do
[[ -d $dir ]] && \
log_must $RM -rf $dir
done
-
-# recreate and destroy a zpool over the disks to restore the partitions to
-# normal
-case $DISK_COUNT in
-0|1)
- log_note "No disk devices to restore"
- ;;
-*)
- log_must cleanup_devices $ZFS_DISK1
- log_must cleanup_devices $ZFS_DISK2
- ;;
-esac
log_pass
Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh Wed Oct 9 17:08:40 2019 (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh Wed Oct 9 17:24:09 2019 (r353360)
@@ -33,19 +33,8 @@
verify_runnable "global"
-DISK=${DISKS%% *}
+create_pool "$TESTPOOL" "$DISK0"
-for dev in $ZFS_DISK1 $ZFS_DISK2 ; do
- log_must cleanup_devices $dev
-done
-
-typeset -i i=0
-if [[ $DISK_COUNT -lt 2 ]]; then
- partition_disk $PART_SIZE $ZFS_DISK1 $GROUP_NUM
-fi
-
-create_pool "$TESTPOOL" "$ZFSSIDE_DISK1"
-
if [[ -d $TESTDIR ]]; then
$RM -rf $TESTDIR || log_unresolved Could not remove $TESTDIR
$MKDIR -p $TESTDIR || log_unresolved Could not create $TESTDIR
@@ -54,21 +43,8 @@ fi
log_must $ZFS create $TESTPOOL/$TESTFS
log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
-# Limit the filesystem size to 32GiB; this should be sufficient.
-(( MAXSECTS = 32 * 1024 * 1024 ))
-NUMSECTS=`diskinfo ${ZFSSIDE_DISK2} | awk '{print $4}'`
-if [[ $NUMSECTS -gt $MAXSECTS ]]; then
- NUMSECTS=$MAXSECTS
-fi
-
-$ECHO "y" | $NEWFS -s $NUMSECTS $ZFSSIDE_DISK2 >/dev/null 2>&1
-(( $? != 0 )) &&
- log_untested "Unable to setup a UFS file system"
-
[[ ! -d $DEVICE_DIR ]] && \
log_must $MKDIR -p $DEVICE_DIR
-
-log_must $MOUNT $ZFSSIDE_DISK2 $DEVICE_DIR
i=0
while (( i < $MAX_NUM )); do
Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg Wed Oct 9 17:08:40 2019 (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg Wed Oct 9 17:24:09 2019 (r353360)
@@ -32,43 +32,17 @@
. $STF_SUITE/tests/cli_root/cli.cfg
. $STF_SUITE/include/libtest.kshlib
-set -A disk_array $(find_disks $DISKS)
-case "${#disk_array[*]}" in
-0)
- #
- # on stf_configure, disk_freelist returns empty.
- #
- DISK_COUNT=0
- ;;
-1)
- # We need to repartition the single disk to two slices.
- DISK_COUNT=1
- ZFS_DISK1=${disk_array[0]}
- ZFSSIDE_DISK1=${ZFS_DISK1}p1
- ZFS_DISK2=${disk_array[0]}
- ZFSSIDE_DISK2=${ZFS_DISK2}p2
- ;;
-*)
- # We don't need to repartition anything
- DISK_COUNT=2
- ZFS_DISK1=${disk_array[0]}
- ZFSSIDE_DISK1=${ZFS_DISK1}
- ZFS_DISK2=${disk_array[1]}
- ZFSSIDE_DISK2=${ZFS_DISK2}
- ;;
-esac
+set_disks
-export DISK_COUNT ZFS_DISK1 ZFSSIDE_DISK1 ZFS_DISK2 ZFSSIDE_DISK2
-
export FS_SIZE=2gb
export FILE_SIZE=64m
export PART_SIZE=128m
export MAX_NUM=5
export GROUP_NUM=3
-export DEVICE_DIR=${TMPDIR}/dev${TESTCASE_ID}
-export BACKUP_DEVICE_DIR=/bakdev${TESTCASE_ID}
+export DEVICE_DIR=$(pwd)/dev
+export BACKUP_DEVICE_DIR=$(pwd)/bakdev
export DEVICE_FILE=disk
-export DEVICE_ARCHIVE=${TMPDIR}/archive${TESTCASE_ID}.tar
+export DEVICE_ARCHIVE=$(pwd)/archive${TESTCASE_ID}.tar
# MYTESTFILE can be any file that exists and we have r access to
export MYTESTFILE=$STF_SUITE/include/default.cfg
Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh Wed Oct 9 17:08:40 2019 (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh Wed Oct 9 17:24:09 2019 (r353360)
@@ -183,9 +183,9 @@ while (( number <= $GROUP_NUM )); do
continue
fi
fi
- set_partition $number "" $PART_SIZE ${ZFS_DISK2}
+ set_partition $number "" $PART_SIZE ${DISK1}
- setup_single_disk "${ZFS_DISK2}p${number}" \
+ setup_single_disk "${DISK1}p${number}" \
"${TESTPOOL}-$number" \
"$TESTFS" \
"$TESTDIR.$number"
Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh Wed Oct 9 17:08:40 2019 (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh Wed Oct 9 17:24:09 2019 (r353360)
@@ -38,7 +38,7 @@ zpool_import_002_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_002_pos.ksh || atf_fail "Testcase failed"
}
@@ -63,7 +63,7 @@ zpool_import_003_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_003_pos.ksh || atf_fail "Testcase failed"
}
@@ -88,7 +88,7 @@ zpool_import_004_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_004_pos.ksh || atf_fail "Testcase failed"
}
@@ -113,7 +113,7 @@ zpool_import_005_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_005_pos.ksh || atf_fail "Testcase failed"
}
@@ -138,7 +138,7 @@ zpool_import_006_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_006_pos.ksh || atf_fail "Testcase failed"
}
@@ -163,7 +163,7 @@ zpool_import_007_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_007_pos.ksh || atf_fail "Testcase failed"
}
@@ -188,7 +188,7 @@ zpool_import_008_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_008_pos.ksh || atf_fail "Testcase failed"
}
@@ -213,7 +213,7 @@ zpool_import_009_neg_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_009_neg.ksh || atf_fail "Testcase failed"
}
@@ -238,7 +238,7 @@ zpool_import_010_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_010_pos.ksh || atf_fail "Testcase failed"
}
@@ -263,7 +263,7 @@ zpool_import_011_neg_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_011_neg.ksh || atf_fail "Testcase failed"
}
@@ -288,7 +288,7 @@ zpool_import_012_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_012_pos.ksh || atf_fail "Testcase failed"
}
@@ -377,7 +377,7 @@ zpool_import_missing_001_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_missing_001_pos.ksh || atf_fail "Testcase failed"
}
@@ -402,7 +402,7 @@ zpool_import_missing_002_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_missing_002_pos.ksh || atf_fail "Testcase failed"
}
@@ -427,7 +427,7 @@ zpool_import_missing_003_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_missing_003_pos.ksh || atf_fail "Testcase failed"
}
@@ -482,7 +482,7 @@ zpool_import_rename_001_pos_body()
. $(atf_get_srcdir)/../../../include/default.cfg
. $(atf_get_srcdir)/zpool_import.cfg
- verify_disk_count "$DISKS" 2
+ verify_disk_count "$DISKS" 1
ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
ksh93 $(atf_get_srcdir)/zpool_import_rename_001_pos.ksh || atf_fail "Testcase failed"
}
More information about the svn-src-head
mailing list