mirror of
git://sourceware.org/git/lvm2.git
synced 2025-02-06 01:58:01 +03:00
validation: capture store of LV without segment
This commit is contained in:
parent
e9206fb93d
commit
0424410773
@ -1,5 +1,6 @@
|
||||
Version 2.02.176 -
|
||||
===================================
|
||||
Do not allow storing VG metadata with LV without any segment.
|
||||
Fix printed message when thin snapshot was already merged.
|
||||
Remove created spare LV when creation of thin-pool failed.
|
||||
Avoid reading ignored metadata when mda gets used again.
|
||||
|
@ -628,6 +628,11 @@ int check_lv_segments(struct logical_volume *lv, int complete_vg)
|
||||
inc_error_count;
|
||||
}
|
||||
|
||||
if (!le) {
|
||||
log_error("LV %s: has no segment.", lv->name);
|
||||
inc_error_count;
|
||||
}
|
||||
|
||||
dm_list_iterate_items(sl, &lv->segs_using_this_lv) {
|
||||
seg = sl->seg;
|
||||
seg_found = 0;
|
||||
|
@ -189,8 +189,8 @@ done
|
||||
echo Test special situations, vgsplit, vgmerge, etc
|
||||
for mdacp in 1 2; do
|
||||
pvcreate --metadatacopies $mdacp "$dev1" "$dev2" "$dev3" "$dev4" "$dev5"
|
||||
vgcreate --vgmetadatacopies 2 $vg1 "$dev1" "$dev2" "$dev3"
|
||||
vgcreate --vgmetadatacopies $(( mdacp * 1 )) $vg2 "$dev4" "$dev5"
|
||||
vgcreate -cy --vgmetadatacopies 2 $vg1 "$dev1" "$dev2" "$dev3"
|
||||
vgcreate -cy --vgmetadatacopies $(( mdacp * 1 )) $vg2 "$dev4" "$dev5"
|
||||
echo vgsplit/vgmerge preserves value of metadata copies
|
||||
check vg_field $vg1 vg_mda_copies 2
|
||||
check vg_field $vg2 vg_mda_copies $(( mdacp * 1 ))
|
||||
@ -200,7 +200,16 @@ for mdacp in 1 2; do
|
||||
check vg_field $vg1 vg_mda_copies 2
|
||||
check vg_field $vg1 vg_mda_count $(( mdacp * 5 ))
|
||||
echo vgsplit into new vg sets proper value of vgmetadatacopies
|
||||
vgsplit --vgmetadatacopies $(( mdacp * 2 )) $vg1 $vg2 "$dev1" "$dev2"
|
||||
# echo y | pvchange -y --metadataignore n "$dev3" || true
|
||||
# echo y | pvchange -y --metadataignore y "$dev4" || true
|
||||
# echo y | pvchange -y --metadataignore n "$dev5" || true
|
||||
# echo y | pvchange -y --metadataignore y "$dev1" || true
|
||||
# echo y | pvchange -y --metadataignore y "$dev2" || true
|
||||
pvs -o+pv_mda_size,pv_mda_count,pv_mda_used_count,pv_in_use
|
||||
pvdisplay
|
||||
|
||||
#LVM_GDB=1
|
||||
vgsplit --vgmetadatacopies $(( mdacp * 2 )) $vg1 $vg2 "$dev1" "$dev2"
|
||||
check vg_field $vg2 vg_mda_copies $(( mdacp * 2 ))
|
||||
echo vgchange fails if given both vgmetadatacopies and metadatacopies
|
||||
not vgchange --vgmetadatacopies 5 --metadatacopies 7 $vg2
|
||||
|
Loading…
x
Reference in New Issue
Block a user