1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-10-27 10:25:13 +03:00

vgck: Fix #894136, notice on-disk corruption in spite of lvmetad.

This commit is contained in:
Petr Rockai 2013-08-13 23:25:49 +02:00
parent 1a1d3a10ff
commit 0da72743ca
2 changed files with 32 additions and 0 deletions

31
test/shell/vgck.sh Normal file
View File

@ -0,0 +1,31 @@
#!/bin/sh
# Copyright (C) 2013 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
aux prepare_vg 3
lvcreate -n blabla -L 1 $vg
dd if=/dev/urandom bs=512 seek=2 count=32 of=$dev2
# TODO: aux lvmconf "global/locking_type = 4"
if test -e LOCAL_LVMETAD; then
vgscan 2>&1 | tee vgscan.out
not grep "Inconsistent metadata found for VG $vg" vgscan.out
else
not vgscan 2>&1 | tee vgscan.out
grep "Inconsistent metadata found for VG $vg" vgscan.out
fi
dd if=/dev/urandom bs=512 seek=2 count=32 of=$dev2
vgck $vg 2>&1 | tee vgck.out
grep Incorrect vgck.out

View File

@ -37,6 +37,7 @@ static int vgck_single(struct cmd_context *cmd __attribute__((unused)),
int vgck(struct cmd_context *cmd, int argc, char **argv)
{
lvmetad_set_active(0);
return process_each_vg(cmd, argc, argv, 0, NULL,
&vgck_single);
}