From 4c9ec0c30cd895095419332510292ce530f24fdb Mon Sep 17 00:00:00 2001 From: Sakshi Bansal Date: Fri, 20 May 2016 15:16:17 +0530 Subject: dht: selfheal should wind mkdir call to subvols with ESTALE error Backport of http://review.gluster.org/#/c/14496/ > Change-Id: I7140e50263b5f28b900829592c664fa1d79f3f99 > BUG: 1338634 > Signed-off-by: Sakshi Bansal Change-Id: I7140e50263b5f28b900829592c664fa1d79f3f99 BUG: 1338668 Signed-off-by: Sakshi Bansal Reviewed-on: http://review.gluster.org/14497 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System Reviewed-by: Raghavendra G --- xlators/cluster/dht/src/dht-selfheal.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'xlators/cluster/dht/src') diff --git a/xlators/cluster/dht/src/dht-selfheal.c b/xlators/cluster/dht/src/dht-selfheal.c index a70b3f7863c..d14a7c7e714 100644 --- a/xlators/cluster/dht/src/dht-selfheal.c +++ b/xlators/cluster/dht/src/dht-selfheal.c @@ -1276,7 +1276,8 @@ dht_selfheal_dir_mkdir_lookup_done (call_frame_t *frame, xlator_t *this) "dict is NULL, need to make sure gfids are same"); for (i = 0; i < layout->cnt; i++) { - if (layout->list[i].err == ENOENT || + if (layout->list[i].err == ESTALE || + layout->list[i].err == ENOENT || local->selfheal.force_mkdir) { gf_msg_debug (this->name, 0, "Creating directory %s on subvol %s", -- cgit