Bug 1456132

Summary: [Ganesha] : Volume unexport fails once exported,localhost loses the export till Ganesha is restarted.
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Ambarish <asoman>
Component: nfs-ganeshaAssignee: Jiffin <jthottan>
Status: CLOSED WORKSFORME QA Contact: Ambarish <asoman>
Severity: high Docs Contact:
Priority: unspecified    
Version: rhgs-3.3CC: amukherj, bturner, ffilz, jthottan, kkeithle, mbenjamin, rhinduja, rhs-bugs, skoduri, storage-qa-internal
Target Milestone: ---Keywords: Regression
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-05-31 05:50:59 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 Ambarish 2017-05-27 07:10:51 UTC
Description of problem:
-----------------------

Toggle ganesha.enable.

Second attempt to unexport the volume fails.

<snip>
[root@gqas013 tmp]# gluster v set testvol ganesha.enable on
volume set: failed: ganesha.enable is already 'on'.
[root@gqas013 tmp]# gluster v set testvol ganesha.enable off
volume set: success
[root@gqas013 tmp]# gluster v set testvol ganesha.enable on
volume set: success
[root@gqas013 tmp]# gluster v set testvol ganesha.enable off

volume set: failed: Dynamic export addition/deletion failed. Please see log file for details
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# showmount -e
Export list for gqas013.sbu.lab.eng.bos.redhat.com:
[root@gqas013 tmp]# 
[root@gqas013 tmp]# 
[root@gqas013 tmp]# showmount -e
Export list for gqas013.sbu.lab.eng.bos.redhat.com:
[root@gqas013 tmp]# 
</snip>

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

nfs-ganesha-2.4.4-6.el7rhgs.x86_64
glusterfs-ganesha-3.8.4-25.el7rhgs.x86_64


How reproducible:
-----------------

Always.


Additional info:
----------------

Volume Name: testvol
Type: Distributed-Replicate
Volume ID: b7c40c38-fa47-4e18-b296-1bed9b963bd9
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: gqas013.sbu.lab.eng.bos.redhat.com:/bricks/testvol_brick0
Brick2: gqas005.sbu.lab.eng.bos.redhat.com:/bricks/testvol_brick1
Brick3: gqas006.sbu.lab.eng.bos.redhat.com:/bricks/testvol_brick2
Brick4: gqas008.sbu.lab.eng.bos.redhat.com:/bricks/testvol_brick3
Options Reconfigured:
ganesha.enable: on
features.cache-invalidation: on
server.allow-insecure: on
performance.stat-prefetch: off
transport.address-family: inet
nfs.disable: on
nfs-ganesha: enable
cluster.enable-shared-storage: enable
[root@gqas013 tmp]#

Comment 2 Ambarish 2017-05-27 07:12:31 UTC
Export/Unexport was one of the frequent tests that I did in 3.2.

Marking this as Regression.

Comment 7 Jiffin 2017-05-31 05:50:59 UTC
After discussing with Ambarish, we found that the issue was reproduced when gluster v set <volname> ganesha.enable on 
gluster v set <volname> ganesha.enable off
gluster v set <volname> ganesha.enable on
gluster v set <volname> ganesha.enable off
in a kind of all of a sudden, it can happen because if ganesha is handling Add export request at the same time it receive RemoveExport request, that request will fail.
Asked Ambarish to rerun the steps with delay
gluster v set <volname> ganesha.enable on
check whether volume is exported via showmount command
gluster v set <volname> ganesha.enable off
check whether volume is unexported via showmount command
gluster v set <volname> ganesha.enable on
check whether volume is exported via showmount command
gluster v set <volname> ganesha.enable off
check whether volume is unexported via showmount command

It was not reproducible with above steps
Hence closing this bug as works for me