glusterfs

Форк
0
/
gfid2path_nfs.t 
156 строк · 4.0 Кб
1
#!/bin/bash
2

3
. $(dirname $0)/../include.rc
4
. $(dirname $0)/../volume.rc
5
. $(dirname $0)/../nfs.rc
6

7
#G_TESTDEF_TEST_STATUS_CENTOS6=NFS_TEST
8

9
cleanup;
10

11
if test -z $(type -p xxhsum); then
12
    # Build xxhsum from contrib.
13
    XXHSUM_SOURCE="$(dirname $0)/../../contrib/xxhash/xxhsum.c $(dirname $0)/../../contrib/xxhash/xxhash.c"
14
    XXHSUM_EXEC=$(dirname $0)/xxhsum
15
    build_tester $XXHSUM_SOURCE -o $XXHSUM_EXEC -I$(dirname $0)/../../contrib/xxhash
16
else
17
    # Use xxhsum found in PATH.
18
    XXHSUM_EXEC=$(type -p xxhsum)
19
fi
20

21
TEST [ -x $XXHSUM_EXEC ]
22
TEST glusterd
23
TEST pidof glusterd
24

25
## Create a single brick volume (B=1)
26
TEST $CLI volume create $V0 $H0:$B0/${V0}1;
27
EXPECT "$V0" volinfo_field $V0 'Volume Name';
28
EXPECT 'Created' volinfo_field $V0 'Status';
29
EXPECT '1' brick_count $V0
30

31
TEST $CLI volume set $V0 nfs.disable false
32

33
## Start the volume
34
TEST $CLI volume start $V0;
35
EXPECT 'Started' volinfo_field $V0 'Status';
36

37
## Wait for volume to register with rpc.mountd
38
EXPECT_WITHIN $NFS_EXPORT_TIMEOUT "1" is_nfs_export_available
39

40
## Mount the volume
41
TEST mount_nfs $H0:/$V0 $N0 nolock;
42

43

44
pgfid="00000000-0000-0000-0000-000000000001"
45
xxh64_file=$B0/${V0}1/xxh64_file
46

47
#CREATE
48
fname=$N0/file1
49
touch $fname;
50
backpath=$B0/${V0}1/file1
51

52
#Check for the presence of xattr
53
pgfid_bname=$pgfid/file1
54
echo -n $pgfid_bname > $xxh64_file
55
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
56
key="trusted.gfid2path.$xxh64sum"
57
EXPECT $pgfid_bname get_text_xattr $key $backpath
58

59
#MKNOD
60
fname=$N0/mknod_file1
61
mknod $fname p;
62
backpath=$B0/${V0}1/mknod_file1
63

64
#Check for the presence of xattr
65
pgfid_bname=$pgfid/mknod_file1
66
echo -n $pgfid_bname > $xxh64_file
67
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
68
key="trusted.gfid2path.$xxh64sum"
69
EXPECT $pgfid_bname get_text_xattr $key $backpath
70

71
#LINK
72
fname1=$N0/file1
73
fname2=$N0/hl_file1
74
ln $fname1 $fname2
75
backpath1=$B0/${V0}1/file1
76
backpath2=$B0/${V0}1/hl_file1
77

78
#Check for the presence of two xattrs
79
pgfid_bname=$pgfid/file1
80
echo -n $pgfid_bname > $xxh64_file
81
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
82
key="trusted.gfid2path.$xxh64sum"
83
EXPECT $pgfid_bname get_text_xattr $key $backpath1
84

85
pgfid_bname=$pgfid/hl_file1
86
echo -n $pgfid_bname > $xxh64_file
87
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
88
key="trusted.gfid2path.$xxh64sum"
89
EXPECT $pgfid_bname get_text_xattr $key $backpath2
90

91
#RENAME
92
fname1=$N0/file1
93
fname2=$N0/rn_file1
94
mv $fname1 $fname2
95
backpath=$B0/${V0}1/rn_file1
96

97
#Check for the presence of new xattr
98
pgfid_bname=$pgfid/file1
99
echo -n $pgfid_bname > $xxh64_file
100
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
101
key="trusted.gfid2path.$xxh64sum"
102
EXPECT_NOT $pgfid_bname get_text_xattr $key $backpath
103

104
pgfid_bname=$pgfid/rn_file1
105
echo -n $pgfid_bname > $xxh64_file
106
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
107
key="trusted.gfid2path.$xxh64sum"
108
EXPECT $pgfid_bname get_text_xattr $key $backpath
109

110
#UNLINK
111
fname1=$N0/hl_file1
112
rm -f $fname1
113
fname2=$N0/rn_file1
114
backpath=$B0/${V0}1/rn_file1
115

116
#Check removal of xattr
117
pgfid_bname=$pgfid/hl_file1
118
echo -n $pgfid_bname > $xxh64_file
119
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
120
key="trusted.gfid2path.$xxh64sum"
121
EXPECT_NOT $pgfid_bname get_text_xattr $key $backpath
122

123
pgfid_bname=$pgfid/rn_file1
124
echo -n $pgfid_bname > $xxh64_file
125
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
126
key="trusted.gfid2path.$xxh64sum"
127
EXPECT $pgfid_bname get_text_xattr $key $backpath
128

129
#SYMLINK
130
fname=rn_file1
131
sym_fname=$N0/sym_file1
132
ln -s $fname $sym_fname
133
backpath=$B0/${V0}1/sym_file1
134

135
#Check for the presence of xattr
136
pgfid_bname=$pgfid/sym_file1
137
echo -n $pgfid_bname > $xxh64_file
138
xxh64sum=$(($XXHSUM_EXEC $xxh64_file) 2>/dev/null | awk '{print $1}')
139
key="trusted.gfid2path.$xxh64sum"
140
EXPECT $pgfid_bname get_text_xattr $key $backpath
141

142
#FINAL UNLINK
143
fname=$N0/rn_file1
144
sym_fname=$N0/sym_file1
145
mknod_fname=$N0/mknod_file1
146

147
rm -f $fname
148
rm -f $sym_fname
149
rm -f $mknod_fname
150
TEST ! stat $fname
151
TEST ! stat $sym_fname
152
TEST ! stat $mknod_fname
153

154
#Cleanups
155
rm -f $STUB_EXEC
156
cleanup;
157

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

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

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

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