Bug 1428070

Summary: protocol/client: Fix race in brick reconnection
Product: [Community] GlusterFS Reporter: Vijay Bellur <vbellur>
Component: protocolAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: atumball, bugs, mst
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.12.13 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-08 17:30:12 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Vijay Bellur 2017-03-01 19:05:49 UTC
protocol/client: Fix race in brick reconnection

Summary:
- A race condition exists when reconnecting to a brick after connection
  has been lost; it is possible for the client translator to believe the
  connection is down while the socket layer believes the connection is up.
  This situation is permanent and eventually leads to loss of quorum
  and EROFS errors.

- This is a cherry-pick of D3490020 to 3.8

Signed-off-by: Shreyas Siravara <sshreyas>

Change-Id: Ida7afbafd3dceadf9ca7ea8b350aa88db382dd88
Reviewed-on: http://review.gluster.org/16174
Reviewed-by: Kevin Vigor <kvigor>
Tested-by: Shreyas Siravara <sshreyas>
NetBSD-regression: NetBSD Build System <jenkins.org>
Smoke: Gluster Build System <jenkins.org>
CentOS-regression: Gluster Build System <jenkins.org>