diff options
author | karthik-us <ksubrahm@redhat.com> | 2018-08-03 15:55:18 +0530 |
---|---|---|
committer | Amar Tumballi <amarts@redhat.com> | 2018-08-20 12:14:22 +0000 |
commit | e37ee6d509aa98587d55f9ea73bc831c10761eaa (patch) | |
tree | 75fe0318642edd954d3c77b0bc5087b9e59184c8 /xlators/storage/posix/src/posix.h | |
parent | 788cda4cd36574092bef1449ecda579163d06776 (diff) |
posix: Delete the entry if gfid link creation fails
Problem:
If the gfid link file inside .glusterfs is not present for a file,
the operations which are dependent on the gfid will fail,
complaining the link file does not exists inside .glusterfs.
Fix:
If the link file creation fails, fail the entry creation operation
and delete the original file.
Change-Id: Id767511de2da46b1f45aea45cb68b98d965ac96d
fixes: bz#1612037
Signed-off-by: karthik-us <ksubrahm@redhat.com>
Diffstat (limited to 'xlators/storage/posix/src/posix.h')
-rw-r--r-- | xlators/storage/posix/src/posix.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/xlators/storage/posix/src/posix.h b/xlators/storage/posix/src/posix.h index a58d510df2e..b53afdf4b59 100644 --- a/xlators/storage/posix/src/posix.h +++ b/xlators/storage/posix/src/posix.h @@ -328,7 +328,7 @@ int __posix_inode_ctx_get_all (inode_t *inode, xlator_t *this, posix_inode_ctx_t **ctx); int posix_gfid_set (xlator_t *this, const char *path, loc_t *loc, - dict_t *xattr_req); + dict_t *xattr_req, pid_t pid, int *op_errno); int posix_fdstat (xlator_t *this, inode_t *inode, int fd, struct iatt *stbuf_p); int posix_istat (xlator_t *this, inode_t *inode, uuid_t gfid, const char *basename, struct iatt *iatt); |