On 12/03/2014 09:46 AM, Emmanuel Dreyfus wrote: > Emmanuel Dreyfus <manu@xxxxxxxxxx> wrote: > >> I have not yet understood where is the code that retries when >> afr_selfheal_tryinodelk() reports failure. I understand the healer >> completes its sweep without attempting again to fix the entry later. > > Indeed, we have a sleep() and a startover in afr_shd_index_healer() but > not in afr_shd_full_healer(). > Right. Index healer threads do a traversal (readdir) of the entries inside .glusterfs/indices/xattrop and attempt heal for each entry. These threads run (i) in the while loop, (ii) when a brick process comes back up, (iii)when we explicitly run 'gluster vol heal <volname>' afr_shd_full_healer() is run only when we run 'gluster vol heal <volname> full`, doing a full brick traversal (readdirp) from the root and attempting heal for each entry. -Ravi _______________________________________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxxx http://supercolony.gluster.org/mailman/listinfo/gluster-devel