diff options
author | Vijay Bellur <vijay@gluster.com> | 2010-08-10 08:18:47 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2010-08-11 23:46:40 -0700 |
commit | ca938bbe6f50fc77cbcfb3ca47efef0feb8e7526 (patch) | |
tree | 54ca10c1b55e0d616d55a30bcbdaa7061df1e3e2 | |
parent | ced85cce0700d702640c66829a72822e430f1cca (diff) |
glusterd: Remove dependency on existence of peers directory
Signed-off-by: Vijay Bellur <vijay@gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 1310 ()
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1310
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-store.c | 5 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd.c | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-store.c b/xlators/mgmt/glusterd/src/glusterd-store.c index 6ca2f3661..6466f9e7f 100644 --- a/xlators/mgmt/glusterd/src/glusterd-store.c +++ b/xlators/mgmt/glusterd/src/glusterd-store.c @@ -1047,7 +1047,8 @@ glusterd_store_update_peerinfo (glusterd_peerinfo_t *peerinfo) snprintf (filepath, PATH_MAX, "%s/%s", peerdir, peerinfo->hostname); } else { - GF_ASSERT (peerinfo->uuid || peerinfo->hostname); + ret = 0; + goto out; } } else { uuid_unparse (peerinfo->uuid, str); @@ -1105,7 +1106,7 @@ out: int32_t glusterd_store_retrieve_peers (xlator_t *this) { - int32_t ret = -1; + int32_t ret = 0; glusterd_conf_t *priv = NULL; DIR *dir = NULL; struct dirent *entry = NULL; diff --git a/xlators/mgmt/glusterd/src/glusterd.c b/xlators/mgmt/glusterd/src/glusterd.c index 5b75c93fa..7d888d944 100644 --- a/xlators/mgmt/glusterd/src/glusterd.c +++ b/xlators/mgmt/glusterd/src/glusterd.c @@ -229,6 +229,16 @@ init (xlator_t *this) " ,errno = %d", voldir, errno); } + snprintf (voldir, PATH_MAX, "%s/peers", dirname); + + ret = mkdir (voldir, 0777); + + if ((-1 == ret) && (errno != EEXIST)) { + gf_log (this->name, GF_LOG_CRITICAL, + "Unable to create peers directory %s" + " ,errno = %d", voldir, errno); + } + rpc = rpcsvc_init (this->ctx, this->options); if (rpc == NULL) { gf_log (this->name, GF_LOG_ERROR, |