test
setfattr : Add an xattr
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
setfattr : Add an xattr which has wrong prefix
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n uuu.a1 -v 123456 /file1
-fs NAMENODE -rm /file1
SubstringComparator
name must be prefixed with user/trusted/security/system/raw, followed by a '.'
setfattr : Add an xattr of trusted namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n trusted.a1 -v 123456 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
trusted.a1="123456"
setfattr : Add an xattr of system namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n system.a1 -v 123456 /file1
-fs NAMENODE -rm /file1
SubstringComparator
setfattr: User doesn't have permission for xattr: system.a1
setfattr : Add an xattr of security namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n security.a1 -v 123456 /file1
-fs NAMENODE -rm /file1
SubstringComparator
setfattr: User doesn't have permission for xattr: security.a1
setfattr : Add an xattr of raw namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n raw.a1 -v 123456 /file1
-fs NAMENODE -rm /file1
SubstringComparator
setfattr: User doesn't have permission for xattr: raw.a1
setfattr : Add an xattr of raw namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n raw.a1 -v 123456 /.reserved/raw/file1
-fs NAMENODE -getfattr -n raw.a1 /.reserved/raw/file1
-fs NAMENODE -rm /file1
SubstringComparator
raw.a1="123456"
setfattr : Add an xattr, and encode is text
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v "123456" /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
setfattr : Add an xattr, and encode is hex
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 0x313233343536 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
setfattr : Add an xattr, and encode is base64
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 0sMTIzNDU2 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
setfattr : Add multiple xattrs
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
SubstringComparator
user.a2="abc"
setfattr : Remove an xattr
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -setfattr -x user.a1 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
ExactComparator
# file: /file1#LF#user.a2="abc"#LF#
setfattr : Remove an xattr which doesn't exist
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -x user.a2 /file1
-fs NAMENODE -getfattr -d /file1
-fs NAMENODE -rm /file1
ExactComparator
# file: /file1#LF#user.a1="123456"#LF#
setfattr : Remove an xattr of raw namespace
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n raw.a1 -v 123456 /.reserved/raw/file1
-fs NAMENODE -setfattr -n raw.a2 -v 123456 /.reserved/raw/file1
-fs NAMENODE -setfattr -x raw.a2 /.reserved/raw/file1
-fs NAMENODE -getfattr -d /.reserved/raw/file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /.reserved/raw/file1#LF#raw.a1="123456"#LF#
getfattr : Get an xattr
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -n user.a1 /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
getfattr : Get an xattr which doesn't exist
-fs NAMENODE -touchz /file1
-fs NAMENODE -getfattr -n user.a1 /file1
-fs NAMENODE -rm /file1
ExactComparator
# file: /file1#LF#
getfattr : Get an xattr, and encode is text
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -n user.a1 -e text /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1="123456"
getfattr : Get an xattr, and encode is hex
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -n user.a1 -e hex /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1=0x313233343536
getfattr : Get an xattr, and encode is base64
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -n user.a1 -e base64 /file1
-fs NAMENODE -rm /file1
SubstringComparator
# file: /file1
SubstringComparator
user.a1=0sMTIzNDU2
getfattr : Get an xattr, and encode is invalid
-fs NAMENODE -touchz /file1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /file1
-fs NAMENODE -setfattr -n user.a2 -v abc /file1
-fs NAMENODE -getfattr -n user.a1 -e invalid /file1
-fs NAMENODE -rm /file1
SubstringComparator
Invalid/unsupported encoding option specified: invalid
getfattr -R : recursive
-fs NAMENODE -mkdir /dir1
-fs NAMENODE -setfattr -n user.a1 -v 123456 /dir1
-fs NAMENODE -mkdir /dir1/dir2
-fs NAMENODE -setfattr -n user.a2 -v abc /dir1/dir2
-fs NAMENODE -getfattr -R -d /dir1
-fs NAMENODE -rm -R /dir1
ExactComparator
# file: /dir1#LF#user.a1="123456"#LF## file: /dir1/dir2#LF#user.a2="abc"#LF#