summaryrefslogtreecommitdiffstats
path: root/tests/bugs/glusterd/check_elastic_server.t
blob: 8e9e4e5b0eb904a54484ad8de319372c4390202f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#!/bin/bash

. $(dirname $0)/../../include.rc
. $(dirname $0)/../../cluster.rc
. $(dirname $0)/../../volume.rc

function cluster_rebalance_status {
        local vol=$1
        $CLI_2 volume status | grep -iw "Rebalance" -A 5 | grep "Status" | sed 's/.*: //'
}

cleanup;
TEST launch_cluster 4;
TEST $CLI_1 peer probe $H2;
TEST $CLI_1 peer probe $H3;
TEST $CLI_1 peer probe $H4;

EXPECT_WITHIN $PROBE_TIMEOUT 3 peer_count

TEST $CLI_1 volume create $V0 $H1:$B1/$V0  $H2:$B2/$V0
EXPECT 'Created' cluster_volinfo_field 1 $V0 'Status';

$CLI_1 volume start $V0
EXPECT 'Started' cluster_volinfo_field 1 $V0 'Status';

#Mount FUSE
TEST glusterfs -s $H1 --volfile-id=$V0 $M0;

TEST mkdir $M0/dir{1..4};
TEST touch $M0/dir{1..4}/files{1..4};

TEST $CLI_1 volume remove-brick $V0 $H1:$B1/$V0 start
EXPECT_WITHIN $REBALANCE_TIMEOUT "completed" cluster_remove_brick_status_completed_field "$V0 $H1:$B1/$V0"

TEST $CLI_1 volume remove-brick $V0 $H1:$B1/$V0 commit

kill_glusterd 1

total_files=`find $M0 -name "files*" | wc -l`
TEST [ $total_files -eq 16 ];

TEST $CLI_2 volume add-brick $V0 $H3:$B3/$V0

TEST $CLI_2 volume rebalance $V0  start
EXPECT_WITHIN $REBALANCE_TIMEOUT "completed" cluster_rebalance_status $V0

total_files=`find $M0 -name "files*" | wc -l`
TEST [ $total_files -eq 16 ];

TEST $CLI_2 volume add-brick $V0 $H4:$B4/$V0

TEST $CLI_2 volume rebalance $V0  start
EXPECT_WITHIN $REBALANCE_TIMEOUT "completed" cluster_rebalance_status $V0
kill_glusterd 2

total_files=`find $M0 -name "files*" | wc -l`
TEST [ $total_files -eq 16 ];

cleanup;