Bug 1537065

Summary: [Disperse]: client side heal using getfattr command throwing ENOTCONN and wrong status
Product: [Community] GlusterFS Reporter: Ashish Pandey <aspandey>
Component: disperseAssignee: Ashish Pandey <aspandey>
Status: CLOSED DEFERRED QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: atumball, bugs
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-06-20 05:13:21 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:

Description Ashish Pandey 2018-01-22 11:32:08 UTC
Description of problem:
[root@apandey dir]# getfattr -n trusted.ec.heal  file
file: trusted.ec.heal: Transport endpoint is not connected
[root@apandey dir]# getfattr -n trusted.ec.heal  file
# file: file
trusted.ec.heal="Good: 000000, Bad: 111111"

[root@apandey dir]# 


Version-Release number of selected component (if applicable):



[root@apandey dir]# glusterfs --version
glusterfs 4.0dev1
Repository revision: git://git.gluster.org/glusterfs.git
Copyright (c) 2006-2016 Red Hat, Inc. <https://www.gluster.org/>
GlusterFS comes with ABSOLUTELY NO WARRANTY.
It is licensed to you under your choice of the GNU Lesser
General Public License, version 3 or any later version (LGPLv3
or later), or the GNU General Public License, version 2 (GPLv2),
in all cases as published by the Free Software Foundation.
[root@apandey dir]# 


How reproducible:
100%

Steps to Reproduce:
1. create 4+2 ec volume and mount it
2. create a file mount point
3. Go to one of the brick from backend and delete file from real path and also from .glusterfs/folder

4 - trigger client side heal by following command -
getfattr -n trusted.ec.heal  file
IN first attempt is shows error 
file: trusted.ec.heal: Transport endpoint is not connected
However heal get triggered.

In next attempt it shows wrong Good and Bad values

Actual results:
Error and wrong status of volume.

Expected results:
client side heal work without error and should give correct status.

Additional info:

Comment 1 Worker Ant 2018-01-22 11:49:03 UTC
REVIEW: https://review.gluster.org/19272 (cluster/ec: Return correct status for client side heal) posted (#1) for review on master by Ashish Pandey

Comment 2 Amar Tumballi 2019-06-20 05:13:21 UTC
marking as DEFERRED to indicate the status. Would pick this up later.