diff options
author | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2008-11-17 20:49:29 +0000 |
---|---|---|
committer | Pawel Jakub Dawidek <pjd@FreeBSD.org> | 2008-11-17 20:49:29 +0000 |
commit | 1ba4a712dde6e6c613fc411a96958b4ade67de4c (patch) | |
tree | 81b89fa4ac6467771d5aa291a97f4665981a6108 /tools/regression/zfs/zpool/create/option-o.t | |
parent | 8fc061164d74a4c9775f39da3c0b5d02112866c8 (diff) |
Update ZFS from version 6 to 13 and bring some FreeBSD-specific changes.
This bring huge amount of changes, I'll enumerate only user-visible changes:
- Delegated Administration
Allows regular users to perform ZFS operations, like file system
creation, snapshot creation, etc.
- L2ARC
Level 2 cache for ZFS - allows to use additional disks for cache.
Huge performance improvements mostly for random read of mostly
static content.
- slog
Allow to use additional disks for ZFS Intent Log to speed up
operations like fsync(2).
- vfs.zfs.super_owner
Allows regular users to perform privileged operations on files stored
on ZFS file systems owned by him. Very careful with this one.
- chflags(2)
Not all the flags are supported. This still needs work.
- ZFSBoot
Support to boot off of ZFS pool. Not finished, AFAIK.
Submitted by: dfr
- Snapshot properties
- New failure modes
Before if write requested failed, system paniced. Now one
can select from one of three failure modes:
- panic - panic on write error
- wait - wait for disk to reappear
- continue - serve read requests if possible, block write requests
- Refquota, refreservation properties
Just quota and reservation properties, but don't count space consumed
by children file systems, clones and snapshots.
- Sparse volumes
ZVOLs that don't reserve space in the pool.
- External attributes
Compatible with extattr(2).
- NFSv4-ACLs
Not sure about the status, might not be complete yet.
Submitted by: trasz
- Creation-time properties
- Regression tests for zpool(8) command.
Obtained from: OpenSolaris
Notes
Notes:
svn path=/head/; revision=185029
Diffstat (limited to 'tools/regression/zfs/zpool/create/option-o.t')
-rw-r--r-- | tools/regression/zfs/zpool/create/option-o.t | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/tools/regression/zfs/zpool/create/option-o.t b/tools/regression/zfs/zpool/create/option-o.t new file mode 100644 index 000000000000..3305323a0e41 --- /dev/null +++ b/tools/regression/zfs/zpool/create/option-o.t @@ -0,0 +1,107 @@ +#!/bin/sh +# $FreeBSD$ + +dir=`dirname $0` +. ${dir}/../../misc.sh + +echo "1..44" + +disks_create 1 +names_create 2 + +expect_fl ${ZPOOL} create -o size=96M ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_fl ${ZPOOL} create -o used=0 ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_fl ${ZPOOL} create -o available=96M ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_fl ${ZPOOL} create -o capacity=0% ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_fl is_mountpoint /${name0} +expect_fl is_mountpoint /${name1} +expect_ok ${ZPOOL} create -o altroot=/${name1} ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} altroot /${name1} local" +)` +expect "${exp}" ${ZPOOL} get altroot ${name0} +expect_fl is_mountpoint /${name0} +if [ -z "${no_mountpoint}" ]; then + expect_ok is_mountpoint /${name1} +else + expect_fl is_mountpoint /${name1} +fi +expect_ok ${ZPOOL} destroy ${name0} +expect_fl is_mountpoint /${name0} +expect_fl is_mountpoint /${name1} + +expect_fl ${ZPOOL} create -o health=ONLINE ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_fl ${ZPOOL} create -o guid=13949667482126165574 ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o version=9 ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} version 9 local" +)` +expect "${exp}" ${ZPOOL} get version ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_fl ${ZPOOL} create -o bootfs=${name0}/root ${name0} ${disk0} +expect_fl ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o delegation=off ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} delegation off local" +)` +expect "${exp}" ${ZPOOL} get delegation ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o autoreplace=on ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} autoreplace on local" +)` +expect "${exp}" ${ZPOOL} get autoreplace ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o cachefile=none ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} cachefile none local" +)` +expect "${exp}" ${ZPOOL} get cachefile ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o cachefile=/tmp/${name1} ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} cachefile /tmp/${name1} local" +)` +expect "${exp}" ${ZPOOL} get cachefile ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o failmode=continue ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} failmode continue local" +)` +expect "${exp}" ${ZPOOL} get failmode ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +expect_ok ${ZPOOL} create -o failmode=panic ${name0} ${disk0} +exp=`( + echo "NAME PROPERTY VALUE SOURCE" + echo "${name0} failmode panic local" +)` +expect "${exp}" ${ZPOOL} get failmode ${name0} +expect_ok ${ZPOOL} destroy ${name0} + +disks_destroy |