mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
94 lines
3.0 KiB
Bash
94 lines
3.0 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Copyright (C) 2014 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This copyrighted material is made available to anyone wishing to use,
|
|
# modify, copy, or redistribute it subject to the terms and conditions
|
|
# of the GNU General Public License v.2.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
# Exercise creation of cache and cache pool volumes
|
|
|
|
# Full CLI uses --type
|
|
# Shorthand CLI uses -H | --cache
|
|
|
|
SKIP_WITH_LVMLOCKD=1
|
|
SKIP_WITH_LVMPOLLD=1
|
|
|
|
. lib/inittest
|
|
|
|
aux have_cache 1 3 0 || skip
|
|
aux prepare_vg 5 8000
|
|
|
|
# Use 10M origin size
|
|
lvcreate -aey -L10 -n $lv1 $vg
|
|
lvcreate -H -L5 $vg/$lv1
|
|
|
|
# replace 10M size with 5M size of cache device
|
|
NEWCLINE=$(dmsetup table $vg-$lv1 | sed 's/20480/10240/')
|
|
dmsetup reload $vg-$lv1 --table "$NEWCLINE"
|
|
dmsetup resume $vg-$lv1
|
|
|
|
# Check that mismatching cache target is shown by lvs
|
|
lvs -a $vg 2>&1 | grep "WARNING"
|
|
check lv_attr_bit state $vg/$lv1 "X"
|
|
|
|
lvs -o+lv_active $vg
|
|
|
|
lvremove -f $vg
|
|
|
|
|
|
|
|
lvcreate --type cache-pool -L10 $vg/cpool
|
|
lvcreate --type cache -l 1 --cachepool $vg/cpool -n corigin $vg
|
|
lvs -o lv_name,cache_policy
|
|
lvs -o lv_name,cache_settings
|
|
|
|
lvremove -f $vg
|
|
|
|
lvcreate --type cache-pool -L10 $vg/cpool
|
|
lvcreate --type cache -l 1 --cachepool $vg/cpool -n corigin $vg --cachepolicy mq \
|
|
--cachesettings migration_threshold=233
|
|
lvs -o lv_name,cache_policy | grep mq
|
|
lvs -o lv_name,cache_settings | grep migration_threshold=233
|
|
|
|
lvremove -f $vg
|
|
|
|
lvcreate --type cache-pool -L10 --cachepolicy mq --cachesettings migration_threshold=233 $vg/cpool
|
|
lvcreate --type cache -l 1 --cachepool $vg/cpool -n corigin $vg
|
|
lvs -o lv_name,cache_policy | grep mq
|
|
lvs -o lv_name,cache_settings | grep migration_threshold=233
|
|
|
|
lvremove -f $vg
|
|
|
|
lvcreate --type cache-pool -L10 --cachepolicy mq --cachesettings migration_threshold=233 --cachesettings sequential_threshold=13 $vg/cpool
|
|
lvcreate --type cache -l 1 --cachepool $vg/cpool -n corigin $vg
|
|
lvs -o lv_name,cache_policy | grep mq
|
|
lvs -a -o lv_name,cache_policy -S 'cache_policy=mq' | grep corigin
|
|
lvs -o lv_name,cache_settings | grep migration_threshold=233
|
|
lvs -o lv_name,cache_settings | grep sequential_threshold=13
|
|
|
|
lvcreate -n foo -l 1 $vg
|
|
lvs -S 'cache_policy=mq' | grep corigin
|
|
lvs -S 'cache_policy=mq' | not grep foo
|
|
lvs -S 'cache_policy=undefined' | not grep corigin
|
|
lvs -S 'cache_policy=undefined' | grep foo
|
|
lvs -o +cache_policy -S 'cache_policy=mq' | grep corigin
|
|
lvs -o +cache_policy -S 'cache_policy=mq' | not grep foo
|
|
lvs -o +cache_policy -S 'cache_policy=undefined' | not grep corigin
|
|
lvs -o +cache_policy -S 'cache_policy=undefined' | grep foo
|
|
lvs -o +cache_policy -O cache_policy
|
|
lvs -o +cache_settings -S 'cache_settings={migration_threshold=233}' | grep corigin
|
|
lvs -o +cache_settings -S 'cache_settings!={migration_threshold=233}' | grep foo
|
|
lvs -o +cache_policy -O cache_settings
|
|
|
|
lvremove -f $vg
|
|
|
|
lvcreate -n foo -l 1 $vg
|
|
lvs -a -S 'cache_policy=undefined' | grep foo
|
|
|
|
vgremove -ff $vg
|