[Gluster-devel] Selfheal on mount process (disperse)
jahernan at redhat.com
Wed Nov 15 08:03:10 UTC 2017
On Wed, Nov 15, 2017 at 6:19 AM, jayakrishnan mm <jayakrishnan.mm at gmail.com>
> Glusterfs ver 3.7.10
> Volume : disperse (4+2)
> Client on separate machine.
> 1 brick offline.
> Error happens after about 60 seconds of starting write. When checked the
> online brick's
> .glusterfs/indices/xattrop , I could see a gfid entry.
That's normal. When a brick is down, other bricks keep a mark indicating
that the file needs to be repaired once modifications have happened.
> Why the mount process starts healing ? How to prevent this ? When checked
> the source code, (ec-heald.c) I can see the that this dir is scanned every
> 60 sec. If it finds an entry, it starts healing. But why should the client
> do this ? Is there an option to turn off selfheal on the client side ?
The periodic check should only be done by the self-heal daemon, not by
clients. Clients only try to heal files if they are accessed by a user, to
repair them faster and on demand. There have been some improvements in
self-heal detection to avoid some cases where self-healing was being
triggered more than necessary, but these patches are present starting at
3.10 (3.7 is already EOL).
On 3.7 there's an option called 'disperse.background-heals' that can be set
to 0 to avoid client side self-heals.
Anyway, could you attach the log file to see the error you are getting ?
> Gluster-devel mailing list
> Gluster-devel at gluster.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Gluster-devel