From 6408e0e864261479e2a1466f27baba2105aab287 Mon Sep 17 00:00:00 2001 From: Krutika Dhananjay Date: Wed, 5 Aug 2015 16:58:01 +0530 Subject: features/shard: Fix excessive logging in readdir(p) callback Backport of: http://review.gluster.org/#/c/11843/ On enabling features.shard on a volume which already has few files, performing operations on the mount was causing excessive logging of messages of the following kind: [2015-08-05 10:57:48.743352] E [shard.c:232:shard_modify_size_and_block_count] 2-dis-shard: Failed to get trusted.glusterfs.shard.file-size for 0b2bd401-c438-4d57-8ae5-8d26105d3396 Turns out this is coming from shard_readdir_cbk() where the shard translator unconditionally looks for the xattr 'trusted.glusterfs.shard.file-size' in every entry's rsp dict and logs this error on not finding it. But files that are not sharded (i.e., the ones that were created before sharding was enabled on the volume) will not (and should not) have this xattr associated with them. So these logs are misleading and must be suppressed in readdir(p). Change-Id: I2f084023fc3a2a5147d7f364253290280b816db9 BUG: 1250834 Signed-off-by: Krutika Dhananjay Reviewed-on: http://review.gluster.org/11850 Tested-by: Gluster Build System Tested-by: NetBSD Build System Reviewed-by: Pranith Kumar Karampuri --- xlators/features/shard/src/shard.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'xlators') diff --git a/xlators/features/shard/src/shard.c b/xlators/features/shard/src/shard.c index 4284ad679ef..8c9f9f8978e 100644 --- a/xlators/features/shard/src/shard.c +++ b/xlators/features/shard/src/shard.c @@ -3400,7 +3400,9 @@ shard_readdir_cbk (call_frame_t *frame, void *cookie, xlator_t *this, if (IA_ISDIR (entry->d_stat.ia_type)) continue; - shard_modify_size_and_block_count (&entry->d_stat, entry->dict); + if (dict_get (entry->dict, GF_XATTR_SHARD_FILE_SIZE)) + shard_modify_size_and_block_count (&entry->d_stat, + entry->dict); } local->op_ret = op_ret; -- cgit