2013-06-11 15:35:18 +04:00
#!/bin/sh
2014-01-21 13:04:23 +04:00
# Copyright (C) 2013-2014 Red Hat, Inc. All rights reserved.
2013-06-11 15:35:18 +04:00
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2014-06-06 19:40:04 +04:00
. lib/inittest
2013-06-11 15:35:18 +04:00
2014-01-21 13:04:23 +04:00
aux have_thin 1 10 0 || skip
2013-06-11 15:35:18 +04:00
2014-01-21 13:04:23 +04:00
aux prepare_pvs 3 1256
2013-06-11 15:35:18 +04:00
vgcreate -s 1M $vg $( cat DEVICES)
2013-06-15 13:21:03 +04:00
for deactivate in true false; do
2014-01-21 13:04:23 +04:00
# Create some thin volumes
lvcreate -L20 -V30 -n $lv1 -T $vg /pool
lvcreate -s $vg /$lv1
2013-06-11 15:35:18 +04:00
# Confirm we have basic 2M metadata
2013-06-15 13:21:03 +04:00
check lv_field $vg /pool_tmeta size "2.00m"
2013-06-11 15:35:18 +04:00
2014-01-21 13:04:23 +04:00
test $deactivate && lvchange -an $vg
2013-06-11 15:35:18 +04:00
2014-07-23 00:14:31 +04:00
lvresize --poolmetadatasize +2M $vg /pool
2013-06-11 15:35:18 +04:00
# Test it's been resized to 4M
2013-06-15 13:21:03 +04:00
check lv_field $vg /pool_tmeta size "4.00m"
2013-06-11 15:35:18 +04:00
2014-07-23 00:14:31 +04:00
lvresize --poolmetadatasize +256M $vg /pool
2014-01-21 13:04:23 +04:00
check lv_field $vg /pool_tmeta size "260.00m"
2014-07-23 00:14:31 +04:00
lvresize --poolmetadatasize +3G $vg /pool
2014-01-21 13:04:23 +04:00
check lv_field $vg /pool_tmeta size "3.25g"
2013-06-11 15:35:18 +04:00
2013-12-10 14:10:53 +04:00
vgchange -an $vg
vgchange -ay $vg
2013-06-11 15:35:18 +04:00
2014-01-21 13:04:23 +04:00
# TODO: Add more tests
2013-06-15 13:21:03 +04:00
lvremove -ff $vg
done