+++ This bug was initially created as a clone of Bug #1269461 +++ Description of problem: Opening a BZ to track the work wrt entry sh performance improvements. More details can be found @ http://www.gluster.org/pipermail/gluster-devel/2015-September/046773.html 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 Vijay Bellur on 2015-10-28 08:07:22 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#1) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2015-10-29 07:01:06 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#2) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2015-11-01 22:27:12 EST --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#1) for review on master by Ravishankar N (ravishankar) --- Additional comment from Vijay Bellur on 2015-11-02 07:41:07 EST --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#3) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Mike McCune on 2016-03-28 18:22:31 EDT --- This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions --- Additional comment from Vijay Bellur on 2016-04-19 00:46:37 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#5) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-20 23:22:40 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#6) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-26 00:52:13 EDT --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#4) for review on master by Pranith Kumar Karampuri (pkarampu) --- Additional comment from Vijay Bellur on 2016-04-26 00:53:37 EDT --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#5) for review on master by Pranith Kumar Karampuri (pkarampu) --- Additional comment from Vijay Bellur on 2016-04-26 01:26:41 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#7) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-26 04:53:39 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#8) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-26 09:04:44 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: [WIP] Entry self-heal performance enhancements) posted (#9) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-26 09:04:48 EDT --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#6) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-26 09:04:52 EDT --- REVIEW: http://review.gluster.org/14078 (granular esh: protocol/client fix) posted (#1) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 10:36:05 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: Entry self-heal performance enhancements) posted (#10) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 10:36:09 EDT --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#7) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 10:36:13 EDT --- REVIEW: http://review.gluster.org/14078 (protocol/client: Use loc->pargfid if loc->parent(->gfid) is not filled) posted (#2) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 11:50:48 EDT --- REVIEW: http://review.gluster.org/14078 (protocol/client: Use loc->pargfid if loc->parent(->gfid) is not filled) posted (#3) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 12:01:44 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: Entry self-heal performance enhancements) posted (#11) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-28 16:46:09 EDT --- COMMIT: http://review.gluster.org/14078 committed in master by Jeff Darcy (jdarcy) ------ commit 40e96c17647b281264783520f8fbdd9056332b4c Author: Krutika Dhananjay <kdhananj> Date: Tue Apr 26 16:05:04 2016 +0530 protocol/client: Use loc->pargfid if loc->parent(->gfid) is not filled Change-Id: Id73bf635ca94dcf7518b33e529ffca07daeeb1f4 BUG: 1269461 Signed-off-by: Krutika Dhananjay <kdhananj> Reviewed-on: http://review.gluster.org/14078 Reviewed-by: Pranith Kumar Karampuri <pkarampu> NetBSD-regression: NetBSD Build System <jenkins.org> Smoke: Gluster Build System <jenkins.com> CentOS-regression: Gluster Build System <jenkins.com> --- Additional comment from Vijay Bellur on 2016-04-29 07:03:49 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: Entry self-heal performance enhancements) posted (#12) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-29 09:23:32 EDT --- REVIEW: http://review.gluster.org/12442 (cluster/afr: Entry self-heal performance enhancements) posted (#13) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-29 21:21:59 EDT --- COMMIT: http://review.gluster.org/12442 committed in master by Pranith Kumar Karampuri (pkarampu) ------ commit 84c8cc9c5936a2a7539f343c180f06312c8f6d39 Author: Krutika Dhananjay <kdhananj> Date: Wed Oct 14 14:14:51 2015 +0530 cluster/afr: Entry self-heal performance enhancements Change-Id: I52da41dff5619492b656c2217f4716a6cdadebe0 BUG: 1269461 Signed-off-by: Krutika Dhananjay <kdhananj> Reviewed-on: http://review.gluster.org/12442 Reviewed-by: Pranith Kumar Karampuri <pkarampu> NetBSD-regression: NetBSD Build System <jenkins.org> Smoke: Gluster Build System <jenkins.com> CentOS-regression: Gluster Build System <jenkins.com> --- Additional comment from Vijay Bellur on 2016-04-29 21:22:53 EDT --- REVIEW: http://review.gluster.org/12482 (afr, index: changes for granular entry self-heal) posted (#8) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-30 05:12:01 EDT --- REVIEW: http://review.gluster.org/12482 (afr, index: changes for granular entry self-heal) posted (#9) for review on master by Pranith Kumar Karampuri (pkarampu) --- Additional comment from Vijay Bellur on 2016-04-30 06:47:48 EDT --- REVIEW: http://review.gluster.org/12482 (afr/index: changes for granular entry self-heal) posted (#10) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-30 06:47:52 EDT --- REVIEW: http://review.gluster.org/14130 (tests: Add test cases for add/replace brick with granular entry sh) posted (#1) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-04-30 09:44:10 EDT --- COMMIT: http://review.gluster.org/12482 committed in master by Pranith Kumar Karampuri (pkarampu) ------ commit 0eb8e055b739112ac8b70073ef6e4e3f57c43e08 Author: Ravishankar N <ravishankar> Date: Mon Nov 2 08:55:46 2015 +0530 afr/index: changes for granular entry self-heal Implements new indices type ENTRY_CHANGES where other xlators can add/delete names. Change-Id: I01c5568997085e11d22ba36a4376c70b78fb3827 BUG: 1269461 Signed-off-by: Ravishankar N <ravishankar> Reviewed-on: http://review.gluster.org/12482 Tested-by: Krutika Dhananjay <kdhananj> Tested-by: Pranith Kumar Karampuri <pkarampu> Smoke: Gluster Build System <jenkins.com> NetBSD-regression: NetBSD Build System <jenkins.org> CentOS-regression: Gluster Build System <jenkins.com> Reviewed-by: Pranith Kumar Karampuri <pkarampu> --- Additional comment from Vijay Bellur on 2016-05-01 06:04:42 EDT --- REVIEW: http://review.gluster.org/14130 (tests: Add test cases for add/replace brick with granular entry sh) posted (#2) for review on master by Krutika Dhananjay (kdhananj) --- Additional comment from Vijay Bellur on 2016-05-01 09:43:22 EDT --- COMMIT: http://review.gluster.org/14130 committed in master by Niels de Vos (ndevos) ------ commit 65dfbc4fd1c2ebd0189c52673b17b416d4c4d37a Author: Krutika Dhananjay <kdhananj> Date: Fri Apr 29 13:42:54 2016 +0530 tests: Add test cases for add/replace brick with granular entry sh Most of the tests borrowed from Anuradha's original replace-brick and add-brick tests under tests/basic/afr/. Change-Id: I874c04a6af3223e07aa6099b818ff502b6ba2a15 BUG: 1269461 Signed-off-by: Krutika Dhananjay <kdhananj> Reviewed-on: http://review.gluster.org/14130 Smoke: Gluster Build System <jenkins.com> NetBSD-regression: NetBSD Build System <jenkins.org> Reviewed-by: Pranith Kumar Karampuri <pkarampu> CentOS-regression: Gluster Build System <jenkins.com> --- Additional comment from Niels de Vos on 2016-06-16 09:39:34 EDT --- 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.8.0, please open a new bug report. glusterfs-3.8.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://blog.gluster.org/2016/06/glusterfs-3-8-released/ [2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user
http://review.gluster.org/12442
Tested with RHGS 3.2.0 interim build ( glusterfs-3.8.4-8.el7rhgs ) 1. Created replica 3 volume and started it 2. Enabled granular entry heal 3. Used gluster volume as the data domain in RHV 4. Created few VMs and started I/O inside the VM, halted the I/O after few minutes 5. When there were around 10,000 shards under .shards directory, killed a brick and modified few files inside the VMs, which resulted in modification of less than 40 shards Observation is that when the brick was brought up, it just took 12 seconds to heal, whereas without granular entry heal, it took 40+ seconds to heal.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2017-0486.html