Would such a workaround make sense? diff --git a/xlators/cluster/afr/src/afr-self-heald.c b/xlators/cluster/afr/src/ afr-self-heald.c index a341015..dd7ac1a 100644 --- a/xlators/cluster/afr/src/afr-self-heald.c +++ b/xlators/cluster/afr/src/afr-self-heald.c @@ -547,6 +579,11 @@ afr_shd_full_sweep (struct subvol_healer *healer, inode_t *inode) entry->d_stat.ia_gfid); if (entry->d_stat.ia_type == IA_IFDIR) { + if (entry->inode->ia_type == IA_INVAL) { + inode_unref (entry->inode); + entry->inode = afr_shd_inode_find (this, + subvol, entry->d_stat.ia_gfid); + } ret = afr_shd_full_sweep (healer, entry->inode); if (ret) break; -- Emmanuel Dreyfus manu@xxxxxxxxxx _______________________________________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxxx http://supercolony.gluster.org/mailman/listinfo/gluster-devel