Bug 1418014

Summary: disable client.io-threads on replica volume creation
Product: [Community] GlusterFS Reporter: Atin Mukherjee <amukherj>
Component: replicateAssignee: Atin Mukherjee <amukherj>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, nchilaka, pkarampu, rhs-bugs, storage-qa-internal
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.11.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1418011
: 1419305 (view as bug list) Environment:
Last Closed: 2017-05-30 18:40:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1418011, 1419305    

Comment 1 Atin Mukherjee 2017-01-31 15:35:46 UTC
Description of problem:

client.io-threads is turned on by default in 3.9 release. While this tunable has improved EC performance significantly, it has adverse effects on the replicate volume performance, following BZs were filed by perf QE while validating this option:


> https://bugzilla.redhat.com/show_bug.cgi?id=1413512 : [Perf]  Inconsistent sequential writes on FUSE due to client-io-threads

> https://bugzilla.redhat.com/show_bug.cgi?id=1404113 : [Perf] 12% Drop in  sequential reads on SMB v1.0

> https://bugzilla.redhat.com/show_bug.cgi?id=1397854 : [Perf] 10% and 20% drop in sequential writes  on SMB v1 and V3 with RHEL 6.8

> https://bugzilla.redhat.com/show_bug.cgi?id=1395204 : 34% drop in Random Writes  from 3.1.3 to 3.2 on FUSE


As these issues can not be addressed immediately as they are related to the design limitation of AFR, we should turn this option off when a replicate volume is created as a preventive measure.

Comment 2 Worker Ant 2017-01-31 15:44:40 UTC
REVIEW: https://review.gluster.org/16492 (glusterd: turn of client.io-threads for replicate volumes) posted (#2) for review on master by Atin Mukherjee (amukherj)

Comment 3 Worker Ant 2017-01-31 17:13:10 UTC
REVIEW: https://review.gluster.org/16492 (glusterd: turn of client.io-threads for replicate volumes) posted (#3) for review on master by Atin Mukherjee (amukherj)

Comment 4 Worker Ant 2017-02-01 04:34:26 UTC
REVIEW: https://review.gluster.org/16492 (glusterd: turn off client.io-threads for replicate volumes) posted (#4) for review on master by Atin Mukherjee (amukherj)

Comment 5 Worker Ant 2017-02-01 06:12:13 UTC
REVIEW: https://review.gluster.org/16492 (glusterd: turn off client.io-threads for replicate volumes) posted (#5) for review on master by Atin Mukherjee (amukherj)

Comment 6 Worker Ant 2017-02-01 06:15:45 UTC
REVIEW: https://review.gluster.org/16492 (glusterd: turn off client.io-threads for replicate volumes) posted (#6) for review on master by Atin Mukherjee (amukherj)

Comment 7 Worker Ant 2017-02-01 14:56:52 UTC
REVIEW: https://review.gluster.org/16502 (glusterd : do not load io-threads in client graph for replicate volumes) posted (#5) for review on master by Atin Mukherjee (amukherj)

Comment 8 Worker Ant 2017-02-03 12:54:53 UTC
COMMIT: https://review.gluster.org/16502 committed in master by Jeff Darcy (jdarcy) 
------
commit ff075a3d6f9b142911d25c27fd209838782bfff0
Author: Atin Mukherjee <amukherj>
Date:   Wed Feb 1 15:04:08 2017 +0530

    glusterd : do not load io-threads in client graph for replicate volumes
    
    client.io-threads has been turned on by default from release-3.9 onwards,
    however this has an adverse effects on replicate volumes due to the design
    limitations on replications, till that gets addressed through server side
    replication as a preventive measure it is wiser not to load io-threads in the
    client graph for replicate volumes.
    
    Change-Id: Ibc576d4517da23fcdf55c6f4d17b90152a8817d7
    BUG: 1418014
    Signed-off-by: Atin Mukherjee <amukherj>
    Reviewed-on: https://review.gluster.org/16502
    NetBSD-regression: NetBSD Build System <jenkins.org>
    CentOS-regression: Gluster Build System <jenkins.org>
    Smoke: Gluster Build System <jenkins.org>
    Reviewed-by: Prashanth Pai <ppai>
    Reviewed-by: Ravishankar N <ravishankar>
    Reviewed-by: Jeff Darcy <jdarcy>

Comment 9 Shyamsundar 2017-05-30 18:40:10 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.11.0, please open a new bug report.

glusterfs-3.11.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://lists.gluster.org/pipermail/announce/2017-May/000073.html
[2] https://www.gluster.org/pipermail/gluster-users/