+++ This bug was initially created as a clone of Bug #1300564 +++ Description of problem: I/O failed for fuse mount when a graph changed followed by an option changed Version-Release number of selected component (if applicable): mainline How reproducible: very inconsistent. It is a race Steps to Reproduce: 1. Start i/o on fuse mount 2. Disable write-behind (just to have a graph change) 3. immediately enable trash (just to have an option change in server side) 4. I/o will fail with transport end point not connected Actual results: I/O failure Expected results: I/O should not fail Additional info: --- Additional comment from Vijay Bellur on 2016-01-21 02:27:12 EST --- REVIEW: http://review.gluster.org/13271 (protocol/server: Race between server_reconfigure and server_setvolume) posted (#1) for review on master by mohammed rafi kc (rkavunga) --- Additional comment from Vijay Bellur on 2016-01-21 02:38:55 EST --- REVIEW: http://review.gluster.org/13271 (protocol/server: Race between server_reconfigure and server_setvolume) posted (#2) for review on master by mohammed rafi kc (rkavunga) --- Additional comment from Vijay Bellur on 2016-01-21 03:27:03 EST --- REVIEW: http://review.gluster.org/13271 (protocol/server: Race between server_reconfigure and server_setvolume) posted (#3) for review on master by mohammed rafi kc (rkavunga) --- Additional comment from Vijay Bellur on 2016-01-22 03:52:23 EST --- COMMIT: http://review.gluster.org/13271 committed in master by Raghavendra G (rgowdapp) ------ commit 16f6579cb3e1214b1386fb530b8e16c8cbfdef33 Author: Mohammed Rafi KC <rkavunga> Date: Thu Jan 21 12:41:55 2016 +0530 protocol/server: Race between server_reconfigure and server_setvolume During server_reconfigure we authenticate each connected clients against the current options. To do this authentication we store previous values in a dictionary during the connection establishment phase (server_setvolume). If the authentication fails during reconfigure then we will disconnect the transport. Here it introduce a race between server_setvolume and reconfugure. If a reconfigure called before doing a setvolume, the transport will be disconnected Change-Id: Icce2c28a171481327a06efd3901f8a5ee67b05ab BUG: 1300564 Signed-off-by: Mohammed Rafi KC <rkavunga> Reviewed-on: http://review.gluster.org/13271 Smoke: Gluster Build System <jenkins.com> Reviewed-by: Raghavendra G <rgowdapp> CentOS-regression: Gluster Build System <jenkins.com> Reviewed-by: Raghavendra Talur <rtalur> NetBSD-regression: NetBSD Build System <jenkins.org>
REVIEW: http://review.gluster.org/13280 (protocol/server: Race between server_reconfigure and server_setvolume) posted (#1) for review on release-3.7 by mohammed rafi kc (rkavunga)
COMMIT: http://review.gluster.org/13280 committed in release-3.7 by Raghavendra G (rgowdapp) ------ commit 30e4d0db013ece366c5036b1d82c0150f082128a Author: Mohammed Rafi KC <rkavunga> Date: Thu Jan 21 12:41:55 2016 +0530 protocol/server: Race between server_reconfigure and server_setvolume During server_reconfigure we authenticate each connected clients against the current options. To do this authentication we store previous values in a dictionary during the connection establishment phase (server_setvolume). If the authentication fails during reconfigure then we will disconnect the transport. Here it introduce a race between server_setvolume and reconfugure. If a reconfigure called before doing a setvolume, the transport will be disconnected Backport of> >Change-Id: Icce2c28a171481327a06efd3901f8a5ee67b05ab >BUG: 1300564 >Signed-off-by: Mohammed Rafi KC <rkavunga> >Reviewed-on: http://review.gluster.org/13271 >Smoke: Gluster Build System <jenkins.com> >Reviewed-by: Raghavendra G <rgowdapp> >CentOS-regression: Gluster Build System <jenkins.com> >Reviewed-by: Raghavendra Talur <rtalur> >NetBSD-regression: NetBSD Build System <jenkins.org> (cherry picked from commit 16f6579cb3e1214b1386fb530b8e16c8cbfdef33) Change-Id: I8ab7ad4bd5d2d70bcdae7bcbc233930bcfbeb411 BUG: 1300978 Signed-off-by: Mohammed Rafi KC <rkavunga> Reviewed-on: http://review.gluster.org/13280 Smoke: Gluster Build System <jenkins.com> CentOS-regression: Gluster Build System <jenkins.com> NetBSD-regression: NetBSD Build System <jenkins.org> Reviewed-by: Raghavendra G <rgowdapp>
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.7.7, please open a new bug report. glusterfs-3.7.7 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] https://www.gluster.org/pipermail/gluster-users/2016-February/025292.html [2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user