diff options
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/features/shard/src/shard.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/xlators/features/shard/src/shard.c b/xlators/features/shard/src/shard.c index 2e76720d176..45711754ebe 100644 --- a/xlators/features/shard/src/shard.c +++ b/xlators/features/shard/src/shard.c @@ -4325,9 +4325,12 @@ shard_rename_src_cbk (call_frame_t *frame, void *cookie, xlator_t *this, } /* Set ctx->refresh to TRUE to force a lookup on disk when * shard_lookup_base_file() is called next to refresh the hard link - * count in ctx + * count in ctx. Note that this is applicable only to the case where + * the rename dst is already existent and sharded. */ - shard_inode_ctx_set_refresh_flag (local->int_inodelk.loc.inode, this); + if ((local->dst_block_size) && (!local->cleanup_required)) + shard_inode_ctx_set_refresh_flag (local->int_inodelk.loc.inode, + this); local->prebuf = *buf; local->preoldparent = *preoldparent; |