glusterfs

Форк
0
/
bug-1702299.t 
68 строк · 1.6 Кб
1
#!/bin/bash
2
. $(dirname $0)/../include.rc
3
. $(dirname $0)/../volume.rc
4
. $(dirname $0)/../dht.rc
5
cleanup;
6

7
function get_getfattr {
8
        local path=$1
9
        echo `getfattr -n user.foo $path` | cut -f2 -d"=" | sed -e 's/^"//'  -e 's/"$//'
10
}
11

12
function set_fattr {
13
        for i in `seq 1 10`
14
        do
15
                setfattr -n user.foo -v "newabc" ./tmp${i}
16
                if [ "$?" = "0" ]
17
                 then
18
                    succ=$((succ+1))
19
                else
20
                    fail=$((fail+1))
21
                fi
22
        done
23
}
24

25

26

27
TEST glusterd
28
TEST pidof glusterd
29
TEST $CLI volume create $V0 $H0:$B0/${V0}{0,1,2,3}
30
TEST $CLI volume start $V0
31

32
TEST glusterfs --volfile-id=$V0 --volfile-server=$H0 --entry-timeout=0 --attribute-timeout=0 $M0;
33

34
cd $M0
35
TEST mkdir tmp{1..10}
36

37
succ=fail=0
38
## set user.foo xattr with value newabc after kill one brick
39
set_fattr
40
count=10
41
EXPECT "$succ" echo $count
42
count=0
43
EXPECT "$fail" echo $count
44

45
cd -
46

47
# Add-brick
48
TEST $CLI volume add-brick $V0 $H0:$B0/${V0}{4,5}
49
EXPECT_WITHIN ${PROCESS_UP_TIMEOUT} "6" online_brick_count
50

51
cd $M0
52
## At this point dht code will heal xattr on down brick only for those dirs
53
## hashed subvol was up at the time of update xattr
54
TEST stat ./tmp{1..10}
55

56

57
## Count the user.foo xattr value with newabc on brick and compare with succ value
58
count=`getfattr -n user.foo $B0/${V0}4/tmp{1..10} | grep "user.foo" | grep -iw "newabc" | wc -l`
59
EXPECT "$succ" echo $count
60

61
## Count the user.foo xattr value with newabc on brick and compare with succ value
62
count=`getfattr -n user.foo $B0/${V0}5/tmp{1..10} | grep "user.foo" | grep -iw "newabc" | wc -l`
63
EXPECT "$succ" echo $count
64

65

66
cd -
67
TEST umount $M0
68
cleanup
69

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.