[Gluster-devel] Question on choosing source of replica to heal with AFR

Zhang Huan zhhuan at gmail.com
Sun Feb 23 03:28:52 UTC 2014


Hello all,

While reading codes about how to choose healing source, there is one thing
that confuse me. Say we have 3 replica, and 2 of them are OK and the left
one is outdated due to temporary IO failure. For some reason, one of the 2
correct replica is truncated to 0 due to some underlying correction. Will
glusterfs kick the 0 size file out? or still consider it a correct one and
may corrupt the left correct replica by healing?

In function afr_mark_sources(), it kicks 0 size file out when all nodes are
innocent. Even when all nodes are fools, the file with largest size will be
chosen as source. When it comes to the case that there is wise nodes, it
won't further check file size. Considering different file size of replicate
will trigger healing to work, I am wondering if there is any reason behind
the code?

Thanks.

Zhang Huan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://supercolony.gluster.org/pipermail/gluster-devel/attachments/20140223/0d37a041/attachment-0001.html>


More information about the Gluster-devel mailing list