Hi Soumya, > Il giorno 17/giu/2015, alle ore 19:41, Soumya Koduri <skoduri@xxxxxxxxxx> ha scritto: > > > > On 06/17/2015 10:57 PM, Alessandro De Salvo wrote: >> Hi, >> when disabling exports from gluster 3.7.1, by using gluster vol set <volume> ganesha.enable off, I always get the following error: >> >> Error: Dynamic export addition/deletion failed. Please see log file for details >> >> This message is produced by the failure of /usr/libexec/ganesha/dbus-send.sh, and in fact if I manually perform the command to remove the share I see: > you got it wrong. '/usr/libexec/ganesha/dbus-send.sh' is used by Gluster-CLI to unexport the volume "gluster volume set <volname> ganesha.enable off" which rightly deletes the export file too while un-exporting the volume. Indeed, but the code is the following, only showing the two important functions: function check_cmd_status() { if [ "$1" != "0" ] then rm -rf $GANESHA_DIR/exports/export.$VOL.conf exit 1 fi } function dynamic_export_remove() { removed_id=`cat $GANESHA_DIR/exports/export.$VOL.conf |\ grep Export_Id | cut -d " " -f8` check_cmd_status `echo $?` dbus-send --print-reply --system \ --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr \ org.ganesha.nfsd.exportmgr.RemoveExport uint16:$removed_id check_cmd_status `echo $?` sed -i /$VOL.conf/d $CONF rm -rf $GANESHA_DIR/exports/export.$VOL.conf } So, if the dbus-send fails the function check_cmd_status() just deletes $GANESHA_DIR/exports/export.$VOL.conf and then quits the whole script, so the last two lines (the sed and the rm) are never executed in dynamic_export_remove() > >> >> # dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.RemoveExport uint16:2 >> Error org.freedesktop.DBus.Error.NoReply: Message did not receive a reply (timeout by message bus) >> >> So, there is a timeout and it fails completely. > Check if nfs-ganesha is still running. There was a bug in unexporting the volume. Its been fixed recently in V2.3-dev, yet to be back-ported to V2.2-stable branch. > https://review.gerrithub.io/#/c/236129/ Ah, I see! Yes, ganesha was still alive, otherwise the message would have been different (something like ganesha is unknown by messagebus), and I have also checked with service nfs-ganesha status. However, probably due to the bug you’re mentioning, without issuing e.g. a DisplayExport I’m always getting timeouts. Thanks, Alessandro > > Thanks, > Soumya > >> In this case I think there is a bug in /usr/libexec/ganesha/dbus-send.sh, since it blindly deletes the share config if the RemoveExport fails (function check_cmd_status()), but leaves the %include inside ganesha.conf as in the check_cmd_status() there is a runaway condition and the other removal statements are then not executed. I believe the logic should be fixed here, otherwise even a restart of the service will fail due to the bad configuration. >> >> What’s more worrying is the problem with the dbus. Issuing a DisplayExport before the RemoveExport apparently fixes the problem, so something like this always works: >> >> # dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.DisplayExport uint16:2 >> # dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.RemoveExport uint16:2 >> >> So, it’s like the DisplayExport is forcing someway a refresh that is needed by the RemoveExport. Any idea why? >> I’m using the latest version of ganesha 2.2.0, i.e. 2.2.0-3. >> Thanks, >> >> Alessandro >> >> PS: sorry for reporting so many things in a few days :-) >> >> >> >> ------------------------------------------------------------------------------ >> >> >> >> _______________________________________________ >> Nfs-ganesha-devel mailing list >> Nfs-ganesha-devel@xxxxxxxxxxxxxxxxxxxxx >> https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel >>
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Gluster-users mailing list Gluster-users@xxxxxxxxxxx http://www.gluster.org/mailman/listinfo/gluster-users