There are actually two issues here, 1) EC Selfheal traffic heats the file, as CTR Xlator is not distinguishing normal read-write FOP traffic from EC Sefheal FOP Traffic. Solution for this is detect the client-pid set in the FOP frame and ignore these FOPS in CTR Xlator. Need info from the EC dev Team, on the which client-pid EC Selfheal daemon uses to mark the FOPS different from regular FOPS. 2) During a normal write the file gets heated up for read also, which is not correct and has performance cost w.r.t the extra updates to the database. Well the reason for this is that each write that comes from the user to EC xlator converts to a read-modify-update FOPS. This read FOP doesnt have any marker on it to differentiate it from the regular read, and thus CTR tends to heat up the file. Would require a marker on this read FOP or any such internal FOPs from EC xlator.
REVIEW: http://review.gluster.org/12598 (cluster/ec: Mark self-heal fops as internal) posted (#1) for review on master by Pranith Kumar Karampuri (pkarampu)
REVIEW: http://review.gluster.org/12599 (cluster/ec: Mark internal fops appropriately) posted (#1) for review on master by Xavier Hernandez (xhernandez)
REVIEW: http://review.gluster.org/12598 (cluster/ec: Mark self-heal fops as internal) posted (#2) for review on master by Pranith Kumar Karampuri (pkarampu)
REVIEW: http://review.gluster.org/12598 (cluster/ec: Mark self-heal fops as internal) posted (#4) for review on master by Pranith Kumar Karampuri (pkarampu)
REVIEW: http://review.gluster.org/12599 (cluster/ec: Mark internal fops appropriately) posted (#3) for review on master by Pranith Kumar Karampuri (pkarampu)
COMMIT: http://review.gluster.org/12598 committed in master by Pranith Kumar Karampuri (pkarampu) ------ commit e06adccb38f3dc91a4534232237e07589cd07426 Author: Pranith Kumar K <pkarampu> Date: Tue Nov 17 17:01:47 2015 +0530 cluster/ec: Mark self-heal fops as internal Change-Id: I8ae7af266d3e00460f0cfdc9389a926e5f2fee36 BUG: 1282761 Signed-off-by: Pranith Kumar K <pkarampu> Reviewed-on: http://review.gluster.org/12598 Tested-by: Gluster Build System <jenkins.com> Tested-by: NetBSD Build System <jenkins.org> Reviewed-by: Xavier Hernandez <xhernandez>
COMMIT: http://review.gluster.org/12599 committed in master by Pranith Kumar Karampuri (pkarampu) ------ commit 7b5cd1873e4fc62e6295b5b6c530f1afd4bf4d61 Author: Xavier Hernandez <xhernandez> Date: Tue Nov 17 14:06:20 2015 +0100 cluster/ec: Mark internal fops appropriately 1) Mark read fops in read-modify-write by EC as internal. 2) Handle uid/gid set/reset correctly BUG: 1282761 Change-Id: I5c1ce0cd6213367eaead5fed33aa2397c4e46df7 Signed-off-by: Xavier Hernandez <xhernandez> Reviewed-on: http://review.gluster.org/12599 Tested-by: Gluster Build System <jenkins.com> Tested-by: NetBSD Build System <jenkins.org> Reviewed-by: Pranith Kumar Karampuri <pkarampu>
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