diff options
author | Kotresh HR <khiremat@redhat.com> | 2017-06-29 05:45:34 -0400 |
---|---|---|
committer | Jeff Darcy <jeff@pl.atyp.us> | 2017-07-10 14:51:14 +0000 |
commit | a62b16b72b03f2b7c25c24ea9ac5968453a92009 (patch) | |
tree | 7521978a597377f082172a2b5454e83bbab02bbf /xlators/storage/posix/src/posix-gfid-path.h | |
parent | 9156a743aa76c955d18c9bfcb7c1a38ba00da890 (diff) |
storage/posix: New gfid2path infra
With this infra, a new xattr is stored on each entry
creation as below.
trusted.gfid2path.<xxhash> = <pargfid>/<basename>
If there are hardlinks, multiple xattrs would be present.
Fops which are impacted:
create, mknod, link, symlink, rename, unlink
Option to enable:
gluster vol set <VOLNAME> storage.gfid2path on
Updates: #139
Change-Id: I369974cd16703c45ee87f82e6c2ff5a987a6cc6a
Signed-off-by: Kotresh HR <khiremat@redhat.com>
Reviewed-on: https://review.gluster.org/17488
Smoke: Gluster Build System <jenkins@build.gluster.org>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Aravinda VK <avishwan@redhat.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Diffstat (limited to 'xlators/storage/posix/src/posix-gfid-path.h')
-rw-r--r-- | xlators/storage/posix/src/posix-gfid-path.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/xlators/storage/posix/src/posix-gfid-path.h b/xlators/storage/posix/src/posix-gfid-path.h new file mode 100644 index 00000000000..dbe0c59540d --- /dev/null +++ b/xlators/storage/posix/src/posix-gfid-path.h @@ -0,0 +1,25 @@ +/* + Copyright (c) 2017 Red Hat, Inc. <http://www.redhat.com> + This file is part of GlusterFS. + + This file is licensed to you under your choice of the GNU Lesser + General Public License, version 3 or any later version (LGPLv3 or + later), or the GNU General Public License, version 2 (GPLv2), in all + cases as published by the Free Software Foundation. +*/ + +#ifndef _POSIX_GFID_PATH_H +#define _POSIX_GFID_PATH_H + +#include "xlator.h" +#include "common-utils.h" + +#define MAX_GFID2PATH_LINK_SUP 500 + +int32_t +posix_set_gfid2path_xattr (xlator_t *, const char *, uuid_t, + const char *); +int32_t +posix_remove_gfid2path_xattr (xlator_t *, const char *, uuid_t, + const char *); +#endif /* _POSIX_GFID_PATH_H */ |