[Bugs] [Bug 1644645] New: [AFR] : Start crawling indices and healing only if both data bricks are UP in replica 2 (thin-arbiter)

bugzilla at redhat.com bugzilla at redhat.com
Wed Oct 31 10:09:39 UTC 2018


https://bugzilla.redhat.com/show_bug.cgi?id=1644645

            Bug ID: 1644645
           Summary: [AFR] : Start crawling indices and healing only if
                    both data bricks are UP in replica 2 (thin-arbiter)
           Product: GlusterFS
           Version: 5
         Component: replicate
          Assignee: bugs at gluster.org
          Reporter: aspandey at redhat.com
                CC: bugs at gluster.org
        Depends On: 1640581



+++ This bug was initially created as a clone of Bug #1640581 +++

Description of problem:

Problem: 

Currently in replica 2 volume, if one brick is down and we write/create on
mount point an index entry will be created.
SHD will also keep crawling these index entries even if one brick is down.
That does not makes sense as it can never heal the entry if only one brick is
UP.

In thin-arbiter volume which is also a replica 2 volume, this causes inode lock
contention which in turn sends upcall to all the clients to release notify
locks, even if it can not do anything for healing.

This will slow down the client performance and kills the purpose of keeping in
memory information about bad brick.




Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

--- Additional comment from Worker Ant on 2018-10-18 07:58:38 EDT ---

REVIEW: https://review.gluster.org/21448 (cluster/afr : Check for UP bricks
before starting heal) posted (#1) for review on master by Ashish Pandey

--- Additional comment from Worker Ant on 2018-10-23 20:56:53 EDT ---

COMMIT: https://review.gluster.org/21448 committed in master by "Ravishankar N"
<ravishankar at redhat.com> with a commit message- cluster/afr : Check for UP
bricks before starting heal

Problem:
Currently for replica volume, even if only one brick is UP
SHD will keep crawling index entries even if it can not
heal anything.

In thin-arbiter volume which is also a replica 2 volume,
this causes inode lock contention which in turn sends
upcall to all the clients to release notify locks, even
if it can not do anything for healing.

This will slow down the client performance and kills the
purpose of keeping in memory information about bad brick.

Solution: Before starting heal or even crawling, check if
sufficient number of children are UP and available to check
and heal entries.

Change-Id: I011c9da3b37cae275f791affd56b8f1c1ac9255d
updates: bz#1640581
Signed-off-by: Ashish Pandey <aspandey at redhat.com>


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1640581
[Bug 1640581] [AFR] : Start crawling indices and healing only if both data
bricks are UP in replica 2 (thin-arbiter)
-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list