~ubuntu-branches/debian/sid/lvm2/sid

« back to all changes in this revision

Viewing changes to test/shell/lvconvert-repair-policy.sh

  • Committer: Package Import Robot
  • Author(s): Bastian Blank
  • Date: 2013-03-03 12:33:47 UTC
  • mfrom: (1.1.15)
  • Revision ID: package-import@ubuntu.com-20130303123347-smfwei6dodkdth55
Tags: 2.02.98-1
New upstream version.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/bash
 
1
#!/bin/sh
2
2
# Copyright (C) 2008 Red Hat, Inc. All rights reserved.
3
3
#
4
4
# This copyrighted material is made available to anyone wishing to use,
20
20
# is always on $dev3.  ($dev4 behaves as a spare)
21
21
cleanup() {
22
22
        vgreduce --removemissing $vg
23
 
        for d in "$@"; do aux enable_dev $d; done
24
 
        for d in "$@"; do vgextend $vg $d; done
 
23
        for d in "$@"; do aux enable_dev "$d"; done
 
24
        for d in "$@"; do vgextend $vg "$d"; done
25
25
        lvremove -ff $vg/mirror
26
 
        lvcreate -m 1 --ig -l 2 -n mirror $vg $dev1 $dev2 $dev3:0
 
26
        lvcreate -m 1 --ig -l 2 -n mirror $vg "$dev1" "$dev2" "$dev3":0
27
27
}
28
28
 
29
29
repair() {
34
34
lvchange -a n $vg/mirror
35
35
 
36
36
# Fail a leg of a mirror.
37
 
aux disable_dev $dev1
 
37
aux disable_dev "$dev1"
38
38
lvchange --partial -a y $vg/mirror
39
39
repair 'activation { mirror_image_fault_policy = "remove" }'
40
40
check linear $vg mirror
41
 
cleanup $dev1
 
41
cleanup "$dev1"
42
42
 
43
43
# Fail a leg of a mirror.
44
44
# Expected result: Mirror (leg replaced, should retain log)
45
 
aux disable_dev $dev1
 
45
aux disable_dev "$dev1"
46
46
repair 'activation { mirror_image_fault_policy = "replace" mirror_log_fault_policy = "remove" }'
47
47
check mirror $vg mirror
48
48
check active $vg mirror_mlog
49
 
cleanup $dev1
 
49
cleanup "$dev1"
50
50
 
51
51
# Fail a leg of a mirror.
52
52
# Expected result: Mirror (leg replaced)
53
 
aux disable_dev $dev1
 
53
aux disable_dev "$dev1"
54
54
repair 'activation { mirror_image_fault_policy = "replace" }'
55
55
check mirror $vg mirror
56
56
check active $vg mirror_mlog
57
 
cleanup $dev1
 
57
cleanup "$dev1"
58
58
 
59
59
# Fail a leg of a mirror (use old name for policy specification)
60
60
# Expected result: Mirror (leg replaced)
61
 
aux disable_dev $dev1
 
61
aux disable_dev "$dev1"
62
62
repair 'activation { mirror_image_fault_policy = "replace" }'
63
63
check mirror $vg mirror
64
64
check active $vg mirror_mlog
65
 
cleanup $dev1
 
65
cleanup "$dev1"
66
66
 
67
67
# Fail a leg of a mirror w/ no available spare
68
68
# Expected result: linear
69
69
#                  (or 2-way with leg/log overlap if alloc anywhere)
70
 
aux disable_dev $dev2 $dev4
 
70
aux disable_dev "$dev2" "$dev4"
71
71
repair 'activation { mirror_image_fault_policy = "replace" }'
72
72
check mirror $vg mirror
73
73
not check lv_exists $vg mirror_mlog
74
 
cleanup $dev2 $dev4
 
74
cleanup "$dev2" "$dev4"
75
75
 
76
76
# Fail the log device of a mirror w/ no available spare
77
77
# Expected result: mirror w/ corelog
78
 
aux disable_dev $dev3 $dev4
 
78
aux disable_dev "$dev3" "$dev4"
79
79
repair 'activation { mirror_image_fault_policy = "replace" }' $vg/mirror
80
80
check mirror $vg mirror
81
81
not check lv_exists $vg mirror_mlog
82
 
cleanup $dev3 $dev4
 
82
cleanup "$dev3" "$dev4"
83
83
 
84
84
# Fail the log device with a remove policy
85
85
# Expected result: mirror w/ corelog
86
86
lvchange -a y $vg/mirror
87
 
aux disable_dev $dev3 $dev4
 
87
aux disable_dev "$dev3" "$dev4"
88
88
repair 'activation { mirror_log_fault_policy = "remove" }'
89
89
check mirror $vg mirror core
90
90
not check lv_exists $vg mirror_mlog
91
 
cleanup $dev3 $dev4
 
91
cleanup "$dev3" "$dev4"