summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAtin Mukherjee <amukherj@redhat.com>2017-05-02 11:46:11 +0530
committerShyamsundar Ranganathan <srangana@redhat.com>2017-05-07 15:33:44 +0000
commit714e5505b036f708a4594473d475dbe2c94494ec (patch)
tree8d1f7703dea4f5b5248f7257a12c429409c14e92
parente7927c9aaa8dab454f0e72c1f53cb79f0e86a5db (diff)
glusterd: skip nfs svc reconfigure if nfs xlator is not installed
With 83abcba, nfs svc is not (re)started or stopped if NFS so file is not installed. However the same check was missing in nfs svc reconfigure which was causing all volume set command to fail. >Reviewed-on: https://review.gluster.org/17149 >Smoke: Gluster Build System <jenkins@build.gluster.org> >NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> >Reviewed-by: Niels de Vos <ndevos@redhat.com> >CentOS-regression: Gluster Build System <jenkins@build.gluster.org> >Reviewed-by: Jeff Darcy <jeff@pl.atyp.us> >(cherry picked from commit 316e3300cfaa646b7fa45fcc7f57b81c7bb15a0e) Change-Id: Ie87b5dba44ac59e890cbd60f85944f8e685ad52b BUG: 1447604 Signed-off-by: Atin Mukherjee <amukherj@redhat.com> Reviewed-on: https://review.gluster.org/17156 Smoke: Gluster Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.org> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> Reviewed-by: Shyamsundar Ranganathan <srangana@redhat.com>
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-nfs-svc.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-nfs-svc.c b/xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
index bff4c6cf5d5..32b1064c002 100644
--- a/xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
+++ b/xlators/mgmt/glusterd/src/glusterd-nfs-svc.c
@@ -156,6 +156,15 @@ glusterd_nfssvc_reconfigure ()
priv = this->private;
GF_VALIDATE_OR_GOTO (this->name, priv, out);
+ /* not an error, or a (very) soft error at best */
+ if (sys_access (XLATORDIR "/nfs/server.so", R_OK) != 0) {
+ gf_msg (THIS->name, GF_LOG_INFO, 0,
+ GD_MSG_GNFS_XLATOR_NOT_INSTALLED,
+ "nfs/server.so xlator is not installed");
+ ret = 0;
+ goto out;
+ }
+
cds_list_for_each_entry (volinfo, &priv->volumes, vol_list) {
if (GLUSTERD_STATUS_STARTED == volinfo->status) {
vol_started = _gf_true;