glusterfs
1#!/bin/bash
2. $(dirname $0)/../include.rc
3. $(dirname $0)/../volume.rc
4. $(dirname $0)/../dht.rc
5cleanup;
6
7function get_getfattr {
8local path=$1
9echo `getfattr -n user.foo $path` | cut -f2 -d"=" | sed -e 's/^"//' -e 's/"$//'
10}
11
12function remove_mds_xattr {
13
14for i in `seq 1 10`
15do
16setfattr -x trusted.glusterfs.dht.mds $1/tmp${i} 2> /dev/null
17done
18}
19
20
21
22
23TEST glusterd
24TEST pidof glusterd
25TEST $CLI volume create $V0 $H0:$B0/${V0}{0,1,2,3}
26TEST $CLI volume start $V0
27
28TEST glusterfs --volfile-id=$V0 --volfile-server=$H0 --entry-timeout=0 --attribute-timeout=0 $M0;
29cd $M0
30TEST mkdir tmp{1..10}
31
32##Remove internal mds xattr from all directory
33remove_mds_xattr $B0/${V0}0
34remove_mds_xattr $B0/${V0}1
35remove_mds_xattr $B0/${V0}2
36remove_mds_xattr $B0/${V0}3
37
38##First set user.foo xattr with value abc on all dirs
39
40TEST setfattr -n user.foo -v "abc" ./tmp{1..10}
41EXPECT "abc" get_getfattr ./tmp{1..10}
42EXPECT "abc" get_getfattr $B0/${V0}0/tmp{1..10}
43EXPECT "abc" get_getfattr $B0/${V0}1/tmp{1..10}
44EXPECT "abc" get_getfattr $B0/${V0}2/tmp{1..10}
45EXPECT "abc" get_getfattr $B0/${V0}3/tmp{1..10}
46
47cd -
48TEST umount $M0
49
50cd -
51cleanup
52exit
53