public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2/test t-mirror-lvconvert.sh
@ 2009-12-10 22:06 jbrassow
  0 siblings, 0 replies; 12+ messages in thread
From: jbrassow @ 2009-12-10 22:06 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	jbrassow@sourceware.org	2009-12-10 22:06:15

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	s/=/==/  Typo was causing sub test to always return success.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.11&r2=1.12

--- LVM2/test/t-mirror-lvconvert.sh	2009/08/02 21:59:21	1.11
+++ LVM2/test/t-mirror-lvconvert.sh	2009/12/10 22:06:15	1.12
@@ -87,7 +87,7 @@
 {
   local lv=$1
   local mlog=$(lvs --noheadings -omirror_log $lv | sed -e 's/ //g')
-  [ "$(basename $lv)_mlog" = "$mlog" ]
+  [ "$(basename $lv)_mlog" == "$mlog" ]
 }
 
 wait_conversion_()


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-04-28 17:46 jbrassow
  0 siblings, 0 replies; 12+ messages in thread
From: jbrassow @ 2010-04-28 17:46 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	jbrassow@sourceware.org	2010-04-28 17:46:35

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Test all combinations of mirror conversion, both while the LV
	is active and while it is in-active.
	
	+for i in $(seq 0 4); do
	+       for j in $(seq 0 4); do
	+               for k in core disk mirrored; do
	+                       for l in core disk mirrored; do
	
	The testing code still needs some improvement.  I'd like to add
	the ability to test specifying the PVs to be added/removed during
	a convert.  It will also be important to test partial PV
	specification during down converts (i.e. request to remove more
	mirror images than we have provided PVs for).

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.26&r2=1.27

--- LVM2/test/t-mirror-lvconvert.sh	2010/04/22 15:39:40	1.26
+++ LVM2/test/t-mirror-lvconvert.sh	2010/04/28 17:46:34	1.27
@@ -142,6 +142,269 @@
     "$@" && exit 1 || :;
 }
 
+# ---------------------------------------------------------------------
+# Main repeating test function
+
+log_name_to_count()
+{
+	if [ $1 == "mirrored" ]; then
+		echo 2
+	elif [ $1 == "disk" ]; then
+		echo 1
+	else
+		echo 0
+	fi
+}
+
+#
+# FIXME: For test_[up|down]convert, I'd still like to be able
+# to specifiy devices - especially if I can do partial PV
+# specification for down-converts.  It may even be wise to
+# do one round through these tests without specifying the PVs
+# to use and one round where we do.
+#
+
+#
+# test_upconvert
+#   start_mirror_count:  The '-m' argument to create with
+#   start_log_type: core|disk|mirrored
+#   final_mirror_count: The '-m' argument to convert to
+#   final_log_type: core|disk|mirrored
+#   active: Whether the LV should be active when the convert happens
+#
+# Exmaple: Convert 2-way disk-log mirror to
+#          3-way disk-log mirror while not active
+# -> test_upconvert 1 disk 2 disk 0
+test_upconvert()
+{
+	local start_count=$1
+	local start_count_p1=$(($start_count + 1))
+	local start_log_type=$2
+	local finish_count=$3
+	local finish_count_p1=$(($finish_count + 1))
+	local finish_log_type=$4
+	local dev_array=($dev1 $dev2 $dev3 $dev4 $dev5)
+	local create_devs=""
+	local convert_devs=""
+	local log_devs=""
+	local start_log_count
+	local finish_log_count
+	local max_log_count
+	local alloc=""
+	local active=true
+	local i
+
+	if [ $start_log_type == "disk" ] &&
+		[ $finish_log_type == "mirrored" ]; then
+		echo "FIXME:  disk -> mirrored log conversion not yet supported by LVM"
+		return 0
+	fi
+
+	if [ $5 -eq 0 ]; then
+		active=false
+	fi
+
+	# Do we have enough devices for the mirror images?
+	if [ $finish_count_p1 -gt ${#dev_array[@]} ]; then
+		echo "Action requires too many devices"
+		return 1
+	fi
+
+	start_log_count=`log_name_to_count $start_log_type`
+	finish_log_count=`log_name_to_count $finish_log_type`
+	if [ $finish_log_count -gt $start_log_count ]; then
+		max_log_count=$finish_log_count
+	else
+		max_log_count=$start_log_count
+	fi
+
+	# First group of devs for create
+#	for i in $(seq 0 $start_count); do
+#		create_devs="$create_devs ${dev_array[$i]}"
+#	done
+
+	# Second group of devs for convert
+#	for i in $(seq $start_count_p1 $finish_count); do
+#		convert_devs="$convert_devs ${dev_array[$i]}"
+#	done
+
+	# Third (or overlapping) group of devs for log
+#	for i in $(seq $((${#dev_array[@]} - $max_log_count)) $((${#dev_array[@]} - 1))); do
+#		if [ $i -gt $finish_count ]; then
+#			log_devs="$log_devs ${dev_array[$i]}:0"
+#		else
+#			log_devs="$log_devs ${dev_array[$i]}"			
+#		fi
+#	done
+
+	prepare_lvs_
+	if [ $start_count -gt 0 ]; then
+		# Are there extra devices for the log or do we overlap
+		if [ $(($start_count_p1 + $start_log_count)) -gt ${#dev_array[@]} ]; then
+			alloc="--alloc anywhere"
+		fi
+
+		lvcreate -l2 -m $start_count --mirrorlog $start_log_type \
+			-n $lv1 $vg $alloc $create_devs $log_devs || return 1
+		check_mirror_count_ $vg/$lv1 $start_count_p1
+		# FIXME: check mirror log
+	else
+		lvcreate -l15 -n $lv1 $vg $create_devs || return 1
+	fi
+
+	lvs -a -o name,copy_percent,devices $vg
+	if ! $active; then
+		lvchange -an $vg/$lv1 || return 1
+	fi
+
+	# Are there extra devices for the log or do we overlap
+	if [ $(($finish_count_p1 + $finish_log_count)) -gt ${#dev_array[@]} ]; then
+		alloc="--alloc anywhere"
+	fi
+	echo y | lvconvert -m $finish_count --mirrorlog $finish_log_type \
+		$vg/$lv1 $alloc $convert_devs $log_devs || return 1
+
+	if ! $active; then
+		lvchange -ay $vg/$lv1 || return 1
+	fi
+
+	wait_conversion_ $vg/$lv1
+	lvs -a -o name,copy_percent,devices $vg
+	check_no_tmplvs_ $vg/$lv1
+	check_mirror_count_ $vg/$lv1 $finish_count_p1
+	mimages_are_redundant_ $vg $lv1
+	check_and_cleanup_lvs_
+}
+
+#
+# test_downconvert
+#   start_mirror_count:  The '-m' argument to create with
+#   start_log_type: core|disk|mirrored
+#   final_mirror_count: The '-m' argument to convert to
+#   final_log_type: core|disk|mirrored
+#   active: Whether the LV should be active when the convert happens
+#
+# Exmaple: Convert 3-way disk-log mirror to
+#          2-way disk-log mirror while not active
+# -> test_downconvert 2 disk 3 disk 0
+test_downconvert()
+{
+	local start_count=$1
+	local start_count_p1=$(($start_count + 1))
+	local start_log_type=$2
+	local finish_count=$3
+	local finish_count_p1=$(($finish_count + 1))
+	local finish_log_type=$4
+	local dev_array=($dev1 $dev2 $dev3 $dev4 $dev5)
+	local create_devs=""
+	local convert_devs=""
+	local log_devs=""
+	local start_log_count
+	local finish_log_count
+	local max_log_count
+	local alloc=""
+	local active=true
+	local i
+
+	if [ $start_log_type == "disk" ] &&
+		[ $finish_log_type == "mirrored" ]; then
+		echo "FIXME:  disk -> mirrored log conversion not yet supported by LVM"
+		return 0
+	fi
+
+	if [ $5 -eq 0 ]; then
+		active=false
+	fi
+
+	# Do we have enough devices for the mirror images?
+	if [ $start_count_p1 -gt ${#dev_array[@]} ]; then
+		echo "Action requires too many devices"
+		return 1
+	fi
+
+	start_log_count=`log_name_to_count $start_log_type`
+	finish_log_count=`log_name_to_count $finish_log_type`
+	if [ $finish_log_count -gt $start_log_count ]; then
+		max_log_count=$finish_log_count
+	else
+		max_log_count=$start_log_count
+	fi
+
+	# First group of devs for create
+#	for i in $(seq 0 $start_count); do
+#		create_devs="$create_devs ${dev_array[$i]}"
+#	done
+
+	# Same devices for convert (because we are down-converting)
+#	for i in $(seq 0 $start_count); do
+#		convert_devs="$convert_devs ${dev_array[$i]}"
+#	done
+
+	# Third (or overlapping) group of devs for log creation
+#	for i in $(seq $((${#dev_array[@]} - $max_log_count)) $((${#dev_array[@]} - 1))); do
+#		if [ $i -gt $start_count ]; then
+#			log_devs="$log_devs ${dev_array[$i]}:0"
+#		else
+#			log_devs="$log_devs ${dev_array[$i]}"			
+#		fi
+#	done
+
+	prepare_lvs_
+	if [ $start_count -gt 0 ]; then
+		# Are there extra devices for the log or do we overlap
+		if [ $(($start_count_p1 + $start_log_count)) -gt ${#dev_array[@]} ]; then
+			alloc="--alloc anywhere"
+		fi
+
+		lvcreate -l2 -m $start_count --mirrorlog $start_log_type \
+			-n $lv1 $vg $alloc $create_devs $log_devs || return 1
+		check_mirror_count_ $vg/$lv1 $start_count_p1
+		# FIXME: check mirror log
+	else
+		lvcreate -l15 -n $lv1 $vg $create_devs || return 1
+	fi
+
+	lvs -a -o name,copy_percent,devices $vg
+	if ! $active; then
+		lvchange -an $vg/$lv1 || return 1
+	fi
+
+	# Are there extra devices for the log or do we overlap
+	if [ $(($finish_count_p1 + $finish_log_count)) -gt ${#dev_array[@]} ]; then
+		alloc="--alloc anywhere"
+	fi
+
+	echo y | lvconvert -m $finish_count --mirrorlog $finish_log_type \
+		$vg/$lv1 $alloc $convert_devs $log_devs || return 1
+
+	if ! $active; then
+		lvchange -ay $vg/$lv1 || return 1
+	fi
+
+	wait_conversion_ $vg/$lv1
+	lvs -a -o name,copy_percent,devices $vg
+	check_no_tmplvs_ $vg/$lv1
+	check_mirror_count_ $vg/$lv1 $finish_count_p1
+	mimages_are_redundant_ $vg $lv1
+	check_and_cleanup_lvs_
+}
+
+# test_convert
+#   start_image_count
+#   start_log_type
+#   finish_image_count
+#   finish_log_type
+test_convert()
+{
+	if [ $1 -lt $3 ]; then
+		test_upconvert $1 $2 $3 $4 0 || return 1
+		test_upconvert $1 $2 $3 $4 1 || return 1
+	else
+		test_downconvert $1 $2 $3 $4 0 || return 1
+		test_downconvert $1 $2 $3 $4 1 || return 1
+	fi
+}
+
 
 prepare_lvs_
 check_and_cleanup_lvs_
@@ -150,7 +413,38 @@
 # mirrored LV tests
 
 # ---
+# Test conversion combinations from linear <-> 4-way mirrors
+for i in $(seq 0 4); do
+	for j in $(seq 0 4); do
+		for k in core disk mirrored; do
+			for l in core disk mirrored; do
+				#############################################
+				echo "Testing mirror conversion -m$i/$k -> -m$j/$l"
+				test_convert $i $k $j $l
+				#############################################
+			done
+		done
+	done
+done
+
+# ---
 # add mirror to mirror
+prepare_lvs_
+lvs -a -o+devices $vg
+lvcreate -l15 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
+check_mirror_count_ $vg/$lv1 2
+check_mirror_log_ $vg/$lv1
+lvconvert -m+1 -i 20 -b $vg/$lv1 $dev4
+# Next convert should fail b/c we can't have 2 at once
+not lvconvert -m+1 -b $vg/$lv1 $dev5
+wait_conversion_ $vg/$lv1
+lvs -a -o+devices $vg
+check_no_tmplvs_ $vg/$lv1
+check_mirror_count_ $vg/$lv1 3
+mimages_are_redundant_ $vg $lv1
+mirrorlog_is_on_ $vg/$lv1 $dev3
+check_and_cleanup_lvs_
 
 # add 1 mirror
 prepare_lvs_
@@ -471,4 +765,3 @@
 mimages_are_redundant_ $vg $lv1 
 mirrorlog_is_on_ $vg/$lv1 $dev3 
 check_and_cleanup_lvs_
-


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-04-06 23:04 mornfall
  0 siblings, 0 replies; 12+ messages in thread
From: mornfall @ 2010-04-06 23:04 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	mornfall@sourceware.org	2010-04-06 23:04:45

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Move a fragile testcase toward the end of t-mirror-lvconvert.sh.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.21&r2=1.22

--- LVM2/test/t-mirror-lvconvert.sh	2010/04/06 22:22:26	1.21
+++ LVM2/test/t-mirror-lvconvert.sh	2010/04/06 23:04:45	1.22
@@ -262,26 +262,6 @@
 check_and_cleanup_lvs_
 
 # ---
-# add mirror and disk log
-
-# "add 1 mirror and disk log" 
-prepare_lvs_ 
-lvs -a -o+devices $vg
-lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2
-lvs -a -o+devices $vg
-check_mirror_count_ $vg/$lv1 2 
-not_sh check_mirror_log_ $vg/$lv1 
-# FIXME on next line, specifying $dev3:0 $dev4 (i.e log device first) fails (!)
-lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
-lvs -a -o+devices $vg
-check_no_tmplvs_ $vg/$lv1 
-check_mirror_count_ $vg/$lv1 3 
-check_mirror_log_ $vg/$lv1 
-mimages_are_redundant_ $vg $lv1 
-mirrorlog_is_on_ $vg/$lv1 $dev3 
-check_and_cleanup_lvs_
-
-# ---
 # core log to mirrored log
 
 # change the log type from 'core' to 'mirrored'
@@ -463,3 +443,24 @@
 lvconvert -m1 --mirrorlog disk $vg/$lv1
 lvs -a -o+devices $vg
 check_mirror_log_ $vg/$lv1
+
+# ---
+# add mirror and disk log
+
+# "add 1 mirror and disk log" 
+prepare_lvs_ 
+lvs -a -o+devices $vg
+lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2
+lvs -a -o+devices $vg
+check_mirror_count_ $vg/$lv1 2 
+not_sh check_mirror_log_ $vg/$lv1 
+# FIXME on next line, specifying $dev3:0 $dev4 (i.e log device first) fails (!)
+lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
+lvs -a -o+devices $vg
+check_no_tmplvs_ $vg/$lv1 
+check_mirror_count_ $vg/$lv1 3 
+check_mirror_log_ $vg/$lv1 
+mimages_are_redundant_ $vg $lv1 
+mirrorlog_is_on_ $vg/$lv1 $dev3 
+check_and_cleanup_lvs_
+


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-04-06 22:22 mornfall
  0 siblings, 0 replies; 12+ messages in thread
From: mornfall @ 2010-04-06 22:22 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	mornfall@sourceware.org	2010-04-06 22:22:26

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Put back the `lvconvert -m+1 --mirrorlog disk' test in t-lvconvert-mirror.sh.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.20&r2=1.21

--- LVM2/test/t-mirror-lvconvert.sh	2010/04/06 18:13:43	1.20
+++ LVM2/test/t-mirror-lvconvert.sh	2010/04/06 22:22:26	1.21
@@ -271,14 +271,14 @@
 lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
-# FIXME Next test broken - code does allocation in several pieces 
-#lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev3:0 $dev4 
-#lvs -a -o+devices $vg
-#check_no_tmplvs_ $vg/$lv1 
-#check_mirror_count_ $vg/$lv1 3 
-#check_mirror_log_ $vg/$lv1 
-#mimages_are_redundant_ $vg $lv1 
-#mirrorlog_is_on_ $vg/$lv1 $dev3 
+# FIXME on next line, specifying $dev3:0 $dev4 (i.e log device first) fails (!)
+lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
+lvs -a -o+devices $vg
+check_no_tmplvs_ $vg/$lv1 
+check_mirror_count_ $vg/$lv1 3 
+check_mirror_log_ $vg/$lv1 
+mimages_are_redundant_ $vg $lv1 
+mirrorlog_is_on_ $vg/$lv1 $dev3 
 check_and_cleanup_lvs_
 
 # ---


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-04-06 18:13 agk
  0 siblings, 0 replies; 12+ messages in thread
From: agk @ 2010-04-06 18:13 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2010-04-06 18:13:43

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	disable another broken check in a test

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.19&r2=1.20

--- LVM2/test/t-mirror-lvconvert.sh	2010/04/06 16:30:53	1.19
+++ LVM2/test/t-mirror-lvconvert.sh	2010/04/06 18:13:43	1.20
@@ -309,7 +309,8 @@
 prepare_lvs_
 lvcreate -l2 -n $lv1 $vg $dev1
 lvconvert -m +1 --mirrorlog mirrored $vg/$lv1 $dev1 $dev2 --alloc anywhere
-mimages_are_redundant_ $vg $lv1
+# FIXME Disable next check: --alloc anywhere makes *no* guarantees about placement - that's the entire point of it!
+#mimages_are_redundant_ $vg $lv1
 check_and_cleanup_lvs_
 
 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-04-06 16:31 agk
  0 siblings, 0 replies; 12+ messages in thread
From: agk @ 2010-04-06 16:31 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2010-04-06 16:30:55

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Disable broken test.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.18&r2=1.19

--- LVM2/test/t-mirror-lvconvert.sh	2010/03/29 16:50:27	1.18
+++ LVM2/test/t-mirror-lvconvert.sh	2010/04/06 16:30:53	1.19
@@ -271,14 +271,14 @@
 lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
-# FIXME on next line, specifying $dev4 $dev3:0 (i.e log device device last) fails (!)
-lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev3:0 $dev4 
-lvs -a -o+devices $vg
-check_no_tmplvs_ $vg/$lv1 
-check_mirror_count_ $vg/$lv1 3 
-check_mirror_log_ $vg/$lv1 
-mimages_are_redundant_ $vg $lv1 
-mirrorlog_is_on_ $vg/$lv1 $dev3 
+# FIXME Next test broken - code does allocation in several pieces 
+#lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev3:0 $dev4 
+#lvs -a -o+devices $vg
+#check_no_tmplvs_ $vg/$lv1 
+#check_mirror_count_ $vg/$lv1 3 
+#check_mirror_log_ $vg/$lv1 
+#mimages_are_redundant_ $vg $lv1 
+#mirrorlog_is_on_ $vg/$lv1 $dev3 
 check_and_cleanup_lvs_
 
 # ---


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-03-29 16:50 mornfall
  0 siblings, 0 replies; 12+ messages in thread
From: mornfall @ 2010-03-29 16:50 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	mornfall@sourceware.org	2010-03-29 16:50:28

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Work around a problem in t-mirror-lvconvert: different PV order on the
	commandline of lvconvert can lead to allocation failures even if enough space
	is available. A separate testcase demonstrating the problem will follow.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.17&r2=1.18

--- LVM2/test/t-mirror-lvconvert.sh	2010/03/26 22:15:44	1.17
+++ LVM2/test/t-mirror-lvconvert.sh	2010/03/29 16:50:27	1.18
@@ -267,11 +267,12 @@
 # "add 1 mirror and disk log" 
 prepare_lvs_ 
 lvs -a -o+devices $vg
-lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2 
+lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2
 lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
-lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
+# FIXME on next line, specifying $dev4 $dev3:0 (i.e log device device last) fails (!)
+lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev3:0 $dev4 
 lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-03-25 12:14 agk
  0 siblings, 0 replies; 12+ messages in thread
From: agk @ 2010-03-25 12:14 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2010-03-25 12:14:14

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	more diagnostics

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.15&r2=1.16

--- LVM2/test/t-mirror-lvconvert.sh	2010/03/25 11:47:00	1.15
+++ LVM2/test/t-mirror-lvconvert.sh	2010/03/25 12:14:14	1.16
@@ -21,7 +21,7 @@
 
   rm -f out
   for i in $(lvs -odevices --noheadings $lv | sed 's/([^)]*)//g; s/,/ /g'); do
-    lvs -a -odevices --noheadings $vg/$i 
+    lvs -a -o+devices $vg/$i 
     lvs -a -odevices --noheadings $vg/$i | sed 's/([^)]*)//g; s/,/ /g' | \
       sort | uniq >> out
   done
@@ -37,7 +37,7 @@
   local lv=$1
 
   # if the lv has multiple segments, it's not contiguous
-  lvs -a --segments --noheadings $lv
+  lvs -a --segments $lv
   [ $(lvs -a --segments --noheadings $lv | wc -l) -ne 1 ] && return 1
 
   return 0
@@ -61,7 +61,7 @@
   local lv="$1"_mlog
   shift 1
   if ! lvs -a $lv; then return 0; fi # FIXME?
-  lvs -a -odevices --noheadings $lv
+  lvs -a -o+devices $lv
   lvs -a -odevices --noheadings $lv | sed 's/,/\n/g' > out
   for d in $*; do grep "$d(" out || return 1; done
   for d in $*; do grep -v "$d(" out > out2 || true; mv out2 out; done
@@ -103,7 +103,7 @@
 check_no_tmplvs_()
 {
   local lv=$1
-  lvs -a --noheadings -oname $(dirname $lv)
+  lvs -a -oname $(dirname $lv)
   lvs -a --noheadings -oname $(dirname $lv) > out
   ! grep tmp out
 }
@@ -150,10 +150,13 @@
 
 # add 1 mirror
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+1 -i1 $vg/$lv1 $dev4
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_mirror_count_ $vg/$lv1 3
 mimages_are_redundant_ $vg $lv1
@@ -163,10 +166,13 @@
 # remove 1 mirror from corelog'ed mirror
 #  should retain 'core' log type
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m2 --corelog -n $lv1 $vg
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 3
 not_sh check_mirror_log_ $vg/$lv1
 lvconvert -m -1 -i1 $vg/$lv1
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_mirror_count_ $vg/$lv1 2
 mimages_are_redundant_ $vg $lv1
@@ -175,10 +181,13 @@
 
 # add 2 mirrors
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+2 -i1 $vg/$lv1 $dev4 $dev5
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_mirror_count_ $vg/$lv1 4
 mimages_are_redundant_ $vg $lv1
@@ -188,10 +197,13 @@
 # add 1 mirror to core log mirror,
 #  explicitly keep log as 'core'
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 not_sh check_mirror_log_ $vg/$lv1
 lvconvert -m+1 -i1 --mirrorlog core $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 
 not_sh check_mirror_log_ $vg/$lv1
@@ -201,10 +213,13 @@
 # add 1 mirror to core log mirror, but
 #  implicitly keep log as 'core'
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 not_sh check_mirror_log_ $vg/$lv1
 lvconvert -m +1 -i1 $vg/$lv1
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_mirror_count_ $vg/$lv1 3
 not_sh check_mirror_log_ $vg/$lv1
@@ -213,10 +228,13 @@
 
 # add 2 mirrors to core log mirror" 
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2 
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
 lvconvert -m+2 -i1 --mirrorlog core $vg/$lv1 $dev4 $dev5 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 4 
 not_sh check_mirror_log_ $vg/$lv1
@@ -228,11 +246,15 @@
 
 # add 1 mirror then add 1 more mirror during conversion
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+1 -b $vg/$lv1 $dev4
+lvs -a -o+devices $vg
 lvconvert -m+1 -i3 $vg/$lv1 $dev5
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_mirror_count_ $vg/$lv1 4
 mimages_are_redundant_ $vg $lv1
@@ -244,10 +266,13 @@
 
 # "add 1 mirror and disk log" 
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2 
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 
 check_mirror_log_ $vg/$lv1 
@@ -260,13 +285,16 @@
 
 # convert inactive mirror and start polling
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 lvchange -an $vg/$lv1
 lvconvert -m+1 $vg/$lv1 $dev4
+lvs -a -o+devices $vg
 lvchange -ay $vg/$lv1
 wait_conversion_ $vg/$lv1
-lvs -a
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1
 check_and_cleanup_lvs_
 
@@ -275,12 +303,17 @@
 
 # "remove newly added mirror" 
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 lvconvert -m-1 $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 wait_conversion_ $vg/$lv1 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 2 
 mimages_are_redundant_ $vg $lv1 
@@ -289,13 +322,19 @@
 
 # "remove one of newly added mirrors" 
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+2 -b $vg/$lv1 $dev4 $dev5 
+lvs -a -o+devices $vg
 lvconvert -m-1 $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 lvconvert -i1 $vg/$lv1 
+lvs -a -o+devices $vg
 wait_conversion_ $vg/$lv1 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 
 mimages_are_redundant_ $vg $lv1 
@@ -304,13 +343,19 @@
 
 # "remove from original mirror (the original is still mirror)"
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m2 -n $lv1 $vg $dev1 $dev2 $dev5 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 3 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 lvconvert -m-1 $vg/$lv1 $dev2 
+lvs -a -o+devices $vg
 lvconvert -i1 $vg/$lv1 
+lvs -a -o+devices $vg
 wait_conversion_ $vg/$lv1 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 
 mimages_are_redundant_ $vg $lv1 
@@ -319,13 +364,19 @@
 
 # "remove from original mirror (the original becomes linear)"
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 
+lvs -a -o+devices $vg
 lvconvert -m-1 $vg/$lv1 $dev2 
+lvs -a -o+devices $vg
 lvconvert -i1 $vg/$lv1 
+lvs -a -o+devices $vg
 wait_conversion_ $vg/$lv1 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 2 
 mimages_are_redundant_ $vg $lv1 
@@ -336,32 +387,45 @@
 
 # "rhbz440405: lvconvert -m0 incorrectly fails if all PEs allocated"
 prepare_lvs_ 
+lvs -a -o+devices $vg
 lvcreate -l`pvs --noheadings -ope_count $dev1` -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0 
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m0 $vg/$lv1 $dev1 
+lvs -a -o+devices $vg
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 1 
 check_and_cleanup_lvs_
 
 # "rhbz264241: lvm mirror doesn't lose it's "M" --nosync attribute after being down and the up converted"
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l2 -m1 -n$lv1 --nosync $vg 
+lvs -a -o+devices $vg
 lvconvert -m0 $vg/$lv1
+lvs -a -o+devices $vg
 lvconvert -m1 $vg/$lv1
+lvs -a -o+devices $vg
 lvs --noheadings -o attr $vg/$lv1 | grep '^ *m'
 check_and_cleanup_lvs_
 
 # lvconvert from linear (on multiple PVs) to mirror
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l 8 -n $lv1 $vg $dev1:0-3 $dev2:0-3
+lvs -a -o+devices $vg
 lvconvert -m1 $vg/$lv1
+lvs -a -o+devices $vg
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 check_and_cleanup_lvs_
 
 # BZ 463272: disk log mirror convert option is lost if downconvert option is also given
 prepare_lvs_
+lvs -a -o+devices $vg
 lvcreate -l1 -m2 --corelog -n $lv1 $vg
+lvs -a -o+devices $vg
 lvconvert -m1 --mirrorlog disk $vg/$lv1
+lvs -a -o+devices $vg
 check_mirror_log_ $vg/$lv1


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2010-03-25 11:47 agk
  0 siblings, 0 replies; 12+ messages in thread
From: agk @ 2010-03-25 11:47 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2010-03-25 11:47:00

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	add debug mesgs and attempt to control which device is used for log as perhaps intended

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.14&r2=1.15

--- LVM2/test/t-mirror-lvconvert.sh	2010/02/17 15:41:28	1.14
+++ LVM2/test/t-mirror-lvconvert.sh	2010/03/25 11:47:00	1.15
@@ -21,6 +21,7 @@
 
   rm -f out
   for i in $(lvs -odevices --noheadings $lv | sed 's/([^)]*)//g; s/,/ /g'); do
+    lvs -a -odevices --noheadings $vg/$i 
     lvs -a -odevices --noheadings $vg/$i | sed 's/([^)]*)//g; s/,/ /g' | \
       sort | uniq >> out
   done
@@ -36,6 +37,7 @@
   local lv=$1
 
   # if the lv has multiple segments, it's not contiguous
+  lvs -a --segments --noheadings $lv
   [ $(lvs -a --segments --noheadings $lv | wc -l) -ne 1 ] && return 1
 
   return 0
@@ -59,6 +61,7 @@
   local lv="$1"_mlog
   shift 1
   if ! lvs -a $lv; then return 0; fi # FIXME?
+  lvs -a -odevices --noheadings $lv
   lvs -a -odevices --noheadings $lv | sed 's/,/\n/g' > out
   for d in $*; do grep "$d(" out || return 1; done
   for d in $*; do grep -v "$d(" out > out2 || true; mv out2 out; done
@@ -100,6 +103,7 @@
 check_no_tmplvs_()
 {
   local lv=$1
+  lvs -a --noheadings -oname $(dirname $lv)
   lvs -a --noheadings -oname $(dirname $lv) > out
   ! grep tmp out
 }
@@ -146,7 +150,7 @@
 
 # add 1 mirror
 prepare_lvs_
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+1 -i1 $vg/$lv1 $dev4
@@ -171,7 +175,7 @@
 
 # add 2 mirrors
 prepare_lvs_
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+2 -i1 $vg/$lv1 $dev4 $dev5
@@ -224,7 +228,7 @@
 
 # add 1 mirror then add 1 more mirror during conversion
 prepare_lvs_
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2
 check_mirror_log_ $vg/$lv1
 lvconvert -m+1 -b $vg/$lv1 $dev4
@@ -243,7 +247,7 @@
 lvcreate -l2 -m1 --mirrorlog core -n $lv1 $vg $dev1 $dev2 
 check_mirror_count_ $vg/$lv1 2 
 not_sh check_mirror_log_ $vg/$lv1 
-lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0-1 
+lvconvert -m+1 --mirrorlog disk -i1 $vg/$lv1 $dev4 $dev3:0
 check_no_tmplvs_ $vg/$lv1 
 check_mirror_count_ $vg/$lv1 3 
 check_mirror_log_ $vg/$lv1 
@@ -256,7 +260,7 @@
 
 # convert inactive mirror and start polling
 prepare_lvs_
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2
 lvchange -an $vg/$lv1
 lvconvert -m+1 $vg/$lv1 $dev4
@@ -271,7 +275,7 @@
 
 # "remove newly added mirror" 
 prepare_lvs_ 
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1 
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 
@@ -285,7 +289,7 @@
 
 # "remove one of newly added mirrors" 
 prepare_lvs_ 
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1 
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+2 -b $vg/$lv1 $dev4 $dev5 
@@ -300,7 +304,7 @@
 
 # "remove from original mirror (the original is still mirror)"
 prepare_lvs_ 
-lvcreate -l2 -m2 -n $lv1 $vg $dev1 $dev2 $dev5 $dev3:0-1 
+lvcreate -l2 -m2 -n $lv1 $vg $dev1 $dev2 $dev5 $dev3:0
 check_mirror_count_ $vg/$lv1 3 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 
@@ -315,7 +319,7 @@
 
 # "remove from original mirror (the original becomes linear)"
 prepare_lvs_ 
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1 
+lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0
 check_mirror_count_ $vg/$lv1 2 
 check_mirror_log_ $vg/$lv1 
 lvconvert -m+1 -b $vg/$lv1 $dev4 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2009-05-22 14:56 mbroz
  0 siblings, 0 replies; 12+ messages in thread
From: mbroz @ 2009-05-22 14:56 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	mbroz@sourceware.org	2009-05-22 14:56:17

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Temporary disable one of lvconvert tests.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.8&r2=1.9

--- LVM2/test/t-mirror-lvconvert.sh	2009/05/19 15:47:50	1.8
+++ LVM2/test/t-mirror-lvconvert.sh	2009/05/22 14:56:17	1.9
@@ -280,19 +280,20 @@
 check_and_cleanup_lvs_
 
 # "remove from original mirror (the original becomes linear)"
-prepare_lvs_ 
-lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1 
-check_mirror_count_ $vg/$lv1 2 
-check_mirror_log_ $vg/$lv1 
-lvconvert -m+1 -b $vg/$lv1 $dev4 
-lvconvert -m-1 $vg/$lv1 $dev2 
-lvconvert -i1 $vg/$lv1 
-wait_conversion_ $vg/$lv1 
-check_no_tmplvs_ $vg/$lv1 
-check_mirror_count_ $vg/$lv1 2 
-mimages_are_redundant_ $vg $lv1 
-mirrorlog_is_on_ $vg/$lv1 $dev3 
-check_and_cleanup_lvs_
+# FIXME: enable this test later
+#prepare_lvs_ 
+#lvcreate -l2 -m1 -n $lv1 $vg $dev1 $dev2 $dev3:0-1 
+#check_mirror_count_ $vg/$lv1 2 
+#check_mirror_log_ $vg/$lv1 
+#lvconvert -m+1 -b $vg/$lv1 $dev4 
+#lvconvert -m-1 $vg/$lv1 $dev2 
+#lvconvert -i1 $vg/$lv1 
+#wait_conversion_ $vg/$lv1 
+#check_no_tmplvs_ $vg/$lv1 
+#check_mirror_count_ $vg/$lv1 2 
+#mimages_are_redundant_ $vg $lv1 
+#mirrorlog_is_on_ $vg/$lv1 $dev3 
+#check_and_cleanup_lvs_
 
 # ---------------------------------------------------------------------
 


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2009-05-19 15:47 wysochanski
  0 siblings, 0 replies; 12+ messages in thread
From: wysochanski @ 2009-05-19 15:47 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	wysochanski@sourceware.org	2009-05-19 15:47:50

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Add test - lvconvert from linear (on multiple PVs) to mirror.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.7&r2=1.8

--- LVM2/test/t-mirror-lvconvert.sh	2008/11/10 12:41:52	1.7
+++ LVM2/test/t-mirror-lvconvert.sh	2009/05/19 15:47:50	1.8
@@ -312,4 +312,12 @@
 lvconvert -m0 $vg/$lv1
 lvconvert -m1 $vg/$lv1
 lvs --noheadings -o attr $vg/$lv1 | grep '^ *m'
+check_and_cleanup_lvs_
 
+# lvconvert from linear (on multiple PVs) to mirror
+prepare_lvs_
+lvcreate -l 8 -n $lv1 $vg $dev1:0-3 $dev2:0-3
+lvconvert -m1 $vg/$lv1
+check_mirror_count_ $vg/$lv1 2
+check_mirror_log_ $vg/$lv1
+check_and_cleanup_lvs_


^ permalink raw reply	[flat|nested] 12+ messages in thread

* LVM2/test t-mirror-lvconvert.sh
@ 2008-04-23 18:28 wysochanski
  0 siblings, 0 replies; 12+ messages in thread
From: wysochanski @ 2008-04-23 18:28 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	wysochanski@sourceware.org	2008-04-23 18:27:59

Modified files:
	test           : t-mirror-lvconvert.sh 

Log message:
	Add test for rhbz440405 - lvconvert -m0 fails incorrectly if all PEs allocated.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/t-mirror-lvconvert.sh.diff?cvsroot=lvm2&r1=1.2&r2=1.3

--- LVM2/test/t-mirror-lvconvert.sh	2008/01/17 02:20:48	1.2
+++ LVM2/test/t-mirror-lvconvert.sh	2008/04/23 18:27:59	1.3
@@ -387,6 +387,16 @@
    mirrorlog_is_on_ $vg/$lv1 $(pv_ 3) &&
    check_and_cleanup_lvs_'
 
+test_expect_success "rhbz440405: lvconvert -m0 incorrectly fails if all PEs allocated" \
+  'prepare_lvs_ &&
+   lvcreate -l`pvs --noheadings -ope_count $(pv_ 1)` -m1 -n $lv1 $vg $(pv_ 1) $(pv_ 2) $(pv_ 3):0 &&
+   check_mirror_count_ $vg/$lv1 2 &&
+   check_mirror_log_ $vg/$lv1 &&
+   lvconvert -m0 $vg/$lv1 $(pv_ 1) &&
+   check_no_tmplvs_ $vg/$lv1 &&
+   check_mirror_count_ $vg/$lv1 1 &&
+   check_and_cleanup_lvs_'
+
 # ---------------------------------------------------------------------
 
 test_done


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2010-04-28 17:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-10 22:06 LVM2/test t-mirror-lvconvert.sh jbrassow
  -- strict thread matches above, loose matches on Subject: below --
2010-04-28 17:46 jbrassow
2010-04-06 23:04 mornfall
2010-04-06 22:22 mornfall
2010-04-06 18:13 agk
2010-04-06 16:31 agk
2010-03-29 16:50 mornfall
2010-03-25 12:14 agk
2010-03-25 11:47 agk
2009-05-22 14:56 mbroz
2009-05-19 15:47 wysochanski
2008-04-23 18:28 wysochanski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).