diff options
author | Kotresh HR <khiremat@redhat.com> | 2017-07-16 15:16:56 -0400 |
---|---|---|
committer | Shyamsundar Ranganathan <srangana@redhat.com> | 2017-07-31 15:45:02 +0000 |
commit | 32e366bad947926343fdb389f054ca3051e44774 (patch) | |
tree | 4e9da129dc25bcd826e1d4f9041343c338691fee /tests/volume.rc | |
parent | 61ea2a44b509cebc566fc18b2c356d88a3f1fdc8 (diff) |
storage/posix: Add virtual xattr to fetch path from gfid
The gfid2path infra stores the "pargfid/bname" as on xattr
value for each non directory entry. Hardlinks would have a
separate xattr. This xattr key is internal and is not
exposed to applications. A virtual xattr is exposed for
the applications to fetch the path from gfid.
Internal xattr:
trusted.gfid2path.<xxhash>
Virtual xattr:
glusterfs.gfidtopath
getfattr -h -n glusterfs.gfidtopath /<aux-mnt>/.gfid/<gfid>
If there are hardlinks, it returns all the paths separated
by ':'.
A volume set option is introduced to change the delimiter
to required string of max length 7.
gluster vol set gfid2path-separator ":::"
> Updates: #139
> Change-Id: Ie3b0c3fd8bd5333c4a27410011e608333918c02a
> Signed-off-by: Kotresh HR <khiremat@redhat.com>
> Reviewed-on: https://review.gluster.org/17785
> Smoke: Gluster Build System <jenkins@build.gluster.org>
> CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
> Reviewed-by: Krutika Dhananjay <kdhananj@redhat.com>
Updates: #139
Change-Id: Ie3b0c3fd8bd5333c4a27410011e608333918c02a
Signed-off-by: Kotresh HR <khiremat@redhat.com>
Reviewed-on: https://review.gluster.org/17921
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Smoke: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Shyamsundar Ranganathan <srangana@redhat.com>
Diffstat (limited to 'tests/volume.rc')
-rw-r--r-- | tests/volume.rc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/volume.rc b/tests/volume.rc index 402bb9dbf19..369e5a706c6 100644 --- a/tests/volume.rc +++ b/tests/volume.rc @@ -359,6 +359,11 @@ function get_text_xattr { getfattr -h -d -m. -e text $path 2>/dev/null | grep -a $key | cut -f2 -d'=' } +function get_gfid2path { + local path=$1 + getfattr -h --only-values -n glusterfs.gfidtopath $path 2>/dev/null +} + function get_xattr_key { local key=$1 local path=$2 |