mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-22 17:35:59 +03:00
8322deefee
Snapshots of RAID logical volumes are allowed (including "raid1"). However, snapshots of "mirror" logical volumes has been disallowed due to unsolvable issues inherent to the design. The fact that mirroring (dm-raid1.c) must stop all I/O as the result of a failure and wait for userspace intervention can lead to a circular dependency if userspace is simultaneously waiting for snapshots (on mirrors) to make an I/O update before proceeding. Various snapshot on mirror tests have been removed as a result.
36 lines
1.1 KiB
Bash
36 lines
1.1 KiB
Bash
#!/bin/sh
|
|
# Copyright (C) 2011 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
. lib/test
|
|
|
|
exit 0
|
|
|
|
#
|
|
# Snapshots of 'mirrors' are not supported. They can no longer be created.
|
|
# This file could be used to test some aspect of vgreduce, snapshot, and
|
|
# RAID at some point though...
|
|
#
|
|
|
|
aux prepare_vg 5
|
|
|
|
lvcreate -m 3 --ig -L 2M -n 4way $vg "$dev1" "$dev2" "$dev3" "$dev4" "$dev5":0
|
|
lvcreate -s $vg/4way -L 2M -n snap
|
|
lvcreate -i 2 -L 2M $vg "$dev1" "$dev2" -n stripe
|
|
|
|
aux disable_dev "$dev2" "$dev4"
|
|
echo n | lvconvert --repair $vg/4way
|
|
aux enable_dev "$dev2" "$dev4"
|
|
#not vgreduce --removemissing $vg
|
|
vgreduce -v --removemissing --force $vg # "$dev2" "$dev4"
|
|
lvs -a -o +devices $vg | not grep unknown
|
|
lvs -a -o +devices $vg
|
|
check mirror $vg 4way "$dev5"
|