2017-07-02 22:38:32 +03:00
#!/usr/bin/env bash
2018-12-17 21:24:37 +03:00
# Copyright (C) 2010,2018 Red Hat, Inc. All rights reserved.
2010-07-28 16:20:38 +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,
2016-01-21 13:49:46 +03:00
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2010-07-28 16:20:38 +04:00
2018-05-24 17:49:48 +03:00
2016-02-23 01:13:42 +03:00
2014-06-06 19:40:04 +04:00
. lib/inittest
2009-11-19 16:55:40 +03:00
2018-12-17 21:24:37 +03:00
aux lvmconf "global/support_mirrored_mirror_log=1"
2011-01-05 03:16:18 +03:00
aux prepare_vg 4
2009-11-19 16:55:40 +03:00
2014-05-15 12:25:25 +04:00
lvcreate -aey --type mirror -m 1 -L 10M --nosync -n lv $vg
2012-05-16 19:01:06 +04:00
2014-05-15 12:25:25 +04:00
# Create snapshot of a mirror origin
2012-05-16 19:01:06 +04:00
lvcreate -s $vg /lv -L 10M -n snap
2012-05-01 23:21:24 +04:00
2009-11-19 16:55:40 +03:00
# Down-convert (mirror -> linear) under a snapshot
lvconvert -m0 $vg /lv
# Up-convert (linear -> mirror)
2013-08-08 00:48:31 +04:00
lvconvert --type mirror -m2 $vg /lv
2009-11-19 16:55:40 +03:00
# Down-convert (mirror -> mirror)
2013-08-08 00:48:31 +04:00
lvconvert -m 1 $vg /lv
2009-11-19 16:55:40 +03:00
# Up-convert (mirror -> mirror) -- Not supported!
not lvconvert -m2 $vg /lv
# Log conversion (disk -> core)
lvconvert --mirrorlog core $vg /lv
2018-12-18 12:55:35 +03:00
# Log conversion (core -> mirrored)
# FIXME on cluster
SHOULD = ""
test -e LOCAL_CLVMD && SHOULD = should
$SHOULD lvconvert --mirrorlog mirrored $vg /lv
# Log conversion (mirrored -> core)
lvconvert --mirrorlog core $vg /lv
2009-11-19 16:55:40 +03:00
# Log conversion (core -> disk)
lvconvert --mirrorlog disk $vg /lv
2012-03-16 17:00:05 +04:00
## Clean-up
vgremove -f $vg