Description of problem: Volume gets mounted with v4 even when it is unexported. Version-Release number of selected component (if applicable): [root@dhcp43-133 ~]# rpm -qa|grep glusterfs glusterfs-libs-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-fuse-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-api-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-cli-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-ganesha-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-client-xlators-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-server-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 glusterfs-geo-replication-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 [root@dhcp43-133 ~]# rpm -qa|grep ganesha nfs-ganesha-gluster-2.4-0.dev.26.el7rhgs.x86_64 nfs-ganesha-2.4-0.dev.26.el7rhgs.x86_64 glusterfs-ganesha-3.8.1-0.4.git56fcf39.el7rhgs.x86_64 How reproducible: Always Steps to Reproduce: 1.Create a ganesha cluster and create a volume. 2.Enable ganesha on the volume and mount it on a client. [root@dhcp43-133 ~]# gluster vol set testvolume ganesha.enable on volume set: success 10.70.40.192:/testvolume on /mnt/nfs1 type nfs4 (rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.70.46.206,local_lock=none,addr=10.70.40.192) 3.Mount is successful as expected. 4.Unmount the volume and unexport it. [root@dhcp43-133 ~]# gluster vol set testvolume ganesha.enable off volume set: success [root@dhcp43-133 ~]# showmount -e localhost Export list for localhost: 5.Try mounting the volume back with v4 and observe that it gets mounted and doesn't give any error [root@dhcp46-206 ~]# mount -t nfs -o vers=4 10.70.40.192:/testvolume /mnt/nfs1 [root@dhcp46-206 ~]# 10.70.40.192://testvolume on /mnt/nfs1 type nfs4 (rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.70.46.206,local_lock=none,addr=10.70.40.192) >> Trying the same with v3 mount gives access denied error as below: [root@dhcp46-206 ~]# mount -t nfs -o vers=3 10.70.40.192:/testvolume /mnt/nfs2 mount.nfs: access denied by server while mounting 10.70.40.192:/testvolume 6. Creating dir or files inside the mount point gives "read-only filesystem" [root@dhcp46-206 ~]# cd /mnt/nfs1 [root@dhcp46-206 nfs1]# mkdir dir mkdir: cannot create directory ‘dir’: Read-only file system [root@dhcp46-206 nfs1]# touch file touch: cannot touch ‘file’: Read-only file system Actual results: Volume gets mounted with ganesha v4 mount even when it is unexported. Expected results: Mounting an unexported volume with v4 ganesha mount should give proper error message and should not get mounted. Additional info: Will attach the packet trace
The issue can be easily reproduced in rpm(based on dev26) provided to qa, but on the latest ganesha dev branch(dev28-a) it is not seen. So I am putting a need info Shashank for the same to try again on next provided ganesha build. But there is another issue, I can consistently receive following error during unexport from dbus command :(even though entry is unexported properly) Error org.freedesktop.DBus.Error.NoReply: Message recipient disconnected from message bus without replying.
Since with the latest build (3.8.2), unexport of ganesha volume is not working properly and it is being tracked under seperate bug (https://bugzilla.redhat.com/show_bug.cgi?id=1369398). Will verify this once, the unexport issue gets resolved. Clearing needinfo as of now.
All 3.8.x bugs are now reported against version 3.8 (without .x). For more information, see http://www.gluster.org/pipermail/gluster-devel/2016-September/050859.html