summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMohit Agrawal <moagrawa@redhat.com>2016-12-19 09:14:44 +0530
committerRaghavendra G <rgowdapp@redhat.com>2017-01-09 22:27:50 -0800
commit167f417f73d7877e7b5ea5bf72e66964d463d4b6 (patch)
tree53988d6b75d123d11096db5ed93552095d4e4c60
parentc89a065af2adc11d5aca3a4500d2e8c1ea02ed28 (diff)
dht : file rename operation is successful but log has error File exists
Problem: file rename operation is successful but log has error 'key:trusted.glusterfs.dht.linkto error:File exists' Solution: The error comes in log only when file already has set this xattr (trusted.glusterfs.dht.linkto) before run rename operation and in that case sys_lsetxattr throws this kind of message. To avoid the error message in logs update the condition in posix_handle_pair. BUG: 1404905 Change-Id: Iafd8cb45f9d7f4fe247e297a6ef0af978a8d0b30 Signed-off-by: Mohit Agrawal <moagrawa@redhat.com> Reviewed-on: http://review.gluster.org/16185 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: Raghavendra G <rgowdapp@redhat.com>
-rw-r--r--xlators/storage/posix/src/posix-helpers.c18
-rw-r--r--xlators/storage/posix/src/posix.c9
2 files changed, 20 insertions, 7 deletions
diff --git a/xlators/storage/posix/src/posix-helpers.c b/xlators/storage/posix/src/posix-helpers.c
index 0af586e7777..3fa6dace327 100644
--- a/xlators/storage/posix/src/posix-helpers.c
+++ b/xlators/storage/posix/src/posix-helpers.c
@@ -1145,12 +1145,20 @@ posix_handle_pair (xlator_t *this, const char *real_path,
value->len);
#else /* ! DARWIN */
- gf_msg (this->name, GF_LOG_ERROR, errno,
- P_MSG_XATTR_FAILED, "%s: key:%s"
- "flags: %u length:%d", real_path,
- key, flags, value->len);
+ if (errno == EEXIST)
+ gf_msg_debug (this->name, 0,
+ "%s: key:%s"
+ "flags: %u length:%d",
+ real_path, key, flags,
+ value->len);
+ else
+ gf_msg (this->name, GF_LOG_ERROR, errno,
+ P_MSG_XATTR_FAILED, "%s: key:%s"
+ "flags: %u length:%d",
+ real_path, key, flags,
+ value->len);
#endif /* DARWIN */
- }
+ }
goto out;
}
diff --git a/xlators/storage/posix/src/posix.c b/xlators/storage/posix/src/posix.c
index a2886214364..c989d5527a1 100644
--- a/xlators/storage/posix/src/posix.c
+++ b/xlators/storage/posix/src/posix.c
@@ -1364,8 +1364,13 @@ post_op:
ignore:
op_ret = posix_entry_create_xattr_set (this, real_path, xdata);
if (op_ret) {
- gf_msg (this->name, GF_LOG_ERROR, 0, P_MSG_XATTR_FAILED,
- "setting xattrs on %s failed", real_path);
+ if (errno != EEXIST)
+ gf_msg (this->name, GF_LOG_ERROR, errno,
+ P_MSG_XATTR_FAILED,
+ "setting xattrs on %s failed", real_path);
+ else
+ gf_msg_debug (this->name, 0,
+ "setting xattrs on %s failed", real_path);
}
if (!linked) {