diff options
author | Kaushal M <kaushal@gluster.com> | 2011-08-16 13:17:38 +0530 |
---|---|---|
committer | Vijay Bellur <vijay@gluster.com> | 2011-09-18 23:45:36 -0700 |
commit | 46a7adafe94b14778328d77a7f743fbce17341e3 (patch) | |
tree | 580ee4a085e3eeeeafb2d0025559d780bce00f79 /glusterfsd | |
parent | 5de8c537936c547d8eafa3913e63a84646134f36 (diff) |
glusterfsd: enable max fetch attempts
Enables usage of 'volfile-max-fetch-attempts' option of glusterfsd.
Also, adds an option to 'mount.glusterfs' for setting the max fetch attempts.
For a server with multiple ips, each call to gf_resolve_ip6() returns a
different ip. Since gf_resolve_ip6() is called for each fetch attempt,
this change also enables rrdns support for gluster.
Change-Id: I3edadbf0ff43ff414b30eb50dd9ca4a6fd6b1089
BUG: 2441
Reviewed-on: http://review.gluster.com/239
Reviewed-by: Amar Tumballi <amar@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'glusterfsd')
-rw-r--r-- | glusterfsd/src/glusterfsd-mgmt.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/glusterfsd/src/glusterfsd-mgmt.c b/glusterfsd/src/glusterfsd-mgmt.c index cb7db7cea..330b83fa3 100644 --- a/glusterfsd/src/glusterfsd-mgmt.c +++ b/glusterfsd/src/glusterfsd-mgmt.c @@ -730,19 +730,25 @@ mgmt_rpc_notify (struct rpc_clnt *rpc, void *mydata, rpc_clnt_event_t event, void *data) { xlator_t *this = NULL; + cmd_args_t *cmd_args = NULL; glusterfs_ctx_t *ctx = NULL; int ret = 0; this = mydata; ctx = this->ctx; - + cmd_args = &ctx->cmd_args; switch (event) { case RPC_CLNT_DISCONNECT: if (!ctx->active) { + cmd_args->max_connect_attempts--; gf_log ("glusterfsd-mgmt", GF_LOG_ERROR, "failed to connect with remote-host: %s", strerror (errno)); - cleanup_and_exit (1); + gf_log ("glusterfsd-mgmt", GF_LOG_INFO, + "%d connect attempts left", + cmd_args->max_connect_attempts); + if (0 >= cmd_args->max_connect_attempts) + cleanup_and_exit (1); } break; case RPC_CLNT_CONNECT: |