3
. $(dirname $0)/../include.rc
4
. $(dirname $0)/../cluster.rc
7
$CLI_1 peer status | grep 'Peer in Cluster (Connected)' | wc -l
10
function volume_count {
12
if [ $cli -eq '1' ] ; then
13
$CLI_1 volume info | grep 'Volume Name' | wc -l;
15
$CLI_2 volume info | grep 'Volume Name' | wc -l;
19
function volinfo_field()
24
$CLI_1 volume info $vol | grep "^$field: " | sed 's/.*: //';
27
function two_diff_vols_create {
28
# Both volume creates should be successful
29
$CLI_1 volume create $V0 $H1:$B1/$V0 $H2:$B2/$V0 $H3:$B3/$V0 &
32
$CLI_2 volume create $V1 $H1:$B1/$V1 $H2:$B2/$V1 $H3:$B3/$V1 &
38
function two_diff_vols_start {
39
# Both volume starts should be successful
40
$CLI_1 volume start $V0 &
43
$CLI_2 volume start $V1 &
49
function two_diff_vols_stop_force {
50
# Force stop, so that if rebalance from the
51
# remove bricks is in progress, stop can
52
# still go ahead. Both volume stops should
54
$CLI_1 volume stop $V0 force &
57
$CLI_2 volume stop $V1 force &
63
function same_vol_remove_brick {
65
# Running two same vol commands at the same time can result in
66
# two success', two failures, or one success and one failure, all
67
# of which are valid. The only thing that shouldn't happen is a
72
$CLI_1 volume remove-brick $1 $2 start &
74
$CLI_2 volume remove-brick $1 $2 start
81
TEST $CLI_1 peer probe $H2;
82
TEST $CLI_1 peer probe $H3;
84
EXPECT_WITHIN $PROBE_TIMEOUT 2 check_peers
87
EXPECT 'Created' volinfo_field $V0 'Status';
88
EXPECT 'Created' volinfo_field $V1 'Status';
91
EXPECT 'Started' volinfo_field $V0 'Status';
92
EXPECT 'Started' volinfo_field $V1 'Status';
94
same_vol_remove_brick $V0 $H2:$B2/$V0
95
# Checking glusterd crashed or not after same volume remove brick
97
EXPECT_WITHIN $PROBE_TIMEOUT 2 check_peers
99
same_vol_remove_brick $V1 $H2:$B2/$V1
100
# Checking glusterd crashed or not after same volume remove brick
102
EXPECT_WITHIN $PROBE_TIMEOUT 2 check_peers
104
$CLI_1 volume set $V0 diagnostics.client-log-level DEBUG &
106
$CLI_1 volume set $V1 diagnostics.client-log-level DEBUG
109
$CLI_1 volume status $V0
110
$CLI_2 volume status $V1
112
EXPECT_WITHIN $PROBE_TIMEOUT 1 check_peers
113
EXPECT 'Started' volinfo_field $V0 'Status';
114
EXPECT 'Started' volinfo_field $V1 'Status';
117
$CLI_1 volume status $V0
118
$CLI_2 volume status $V1