diff options
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-handler.c | 87 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-op-sm.c | 275 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-rpc-ops.c | 136 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-store.c | 11 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-utils.c | 62 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volume-ops.c | 63 | 
6 files changed, 404 insertions, 230 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-handler.c b/xlators/mgmt/glusterd/src/glusterd-handler.c index d4bdcd74..bfec8d46 100644 --- a/xlators/mgmt/glusterd/src/glusterd-handler.c +++ b/xlators/mgmt/glusterd/src/glusterd-handler.c @@ -416,13 +416,18 @@ glusterd_friend_find (uuid_t uuid, char *hostname,                        glusterd_peerinfo_t **peerinfo)  {          int     ret = -1; +        xlator_t *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          if (uuid) {                  ret = glusterd_friend_find_by_uuid (uuid, peerinfo);                  if (ret) { -                        gf_log ("glusterd", GF_LOG_INFO, -                                 "Unable to find peer by uuid"); +                        gf_log (this->name, GF_LOG_DEBUG, +                                 "Unable to find peer by uuid: %s", +                                 uuid_utoa (uuid));                  } else {                          goto out;                  } @@ -433,7 +438,7 @@ glusterd_friend_find (uuid_t uuid, char *hostname,                  ret = glusterd_friend_find_by_hostname (hostname, peerinfo);                  if (ret) { -                        gf_log ("glusterd", GF_LOG_INFO, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Unable to find hostname: %s", hostname);                  } else {                          goto out; @@ -465,14 +470,14 @@ glusterd_op_txn_begin (rpcsvc_request_t *req, glusterd_op_t op, void *ctx,          ret = glusterd_lock (MY_UUID);          if (ret) {                  gf_log (this->name, GF_LOG_ERROR, -                        "Unable to acquire local lock, ret: %d", ret); +                        "Unable to acquire lock on localhost, ret: %d", ret);                  snprintf (err_str, err_len, "Another transaction is in progress. "                            "Please try again after sometime.");                  goto out;          }          locked = 1; -        gf_log (this->name, GF_LOG_INFO, "Acquired local lock"); +        gf_log (this->name, GF_LOG_DEBUG, "Acquired lock on localhost");          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_START_LOCK, NULL);          if (ret) { @@ -501,22 +506,26 @@ glusterd_handle_cluster_lock (rpcsvc_request_t *req)          int32_t                         ret = -1;          glusterd_op_lock_ctx_t          *ctx = NULL;          glusterd_peerinfo_t             *peerinfo = NULL; +        xlator_t                        *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          ret = xdr_to_generic (req->msg[0], &lock_req,                                (xdrproc_t)xdr_gd1_mgmt_cluster_lock_req);          if (ret < 0) { -                //failed to decode msg; +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode lock " +                        "request received from peer");                  req->rpc_err = GARBAGE_ARGS;                  goto out;          } -        gf_log ("glusterd", GF_LOG_INFO, -                "Received LOCK from uuid: %s", uuid_utoa (lock_req.uuid)); +        gf_log (this->name, GF_LOG_DEBUG, "Received LOCK from uuid: %s", +                uuid_utoa (lock_req.uuid));          if (glusterd_friend_find_by_uuid (lock_req.uuid, &peerinfo)) { -                gf_log (THIS->name, GF_LOG_WARNING, "%s doesn't " +                gf_log (this->name, GF_LOG_WARNING, "%s doesn't "                          "belong to the cluster. Ignoring request.",                          uuid_utoa (lock_req.uuid));                  ret = -1; @@ -536,7 +545,7 @@ glusterd_handle_cluster_lock (rpcsvc_request_t *req)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_LOCK, ctx);  out: -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          glusterd_friend_sm ();          glusterd_op_sm (); @@ -555,10 +564,13 @@ glusterd_req_ctx_create (rpcsvc_request_t *rpc_req,          char                str[50] = {0,};          glusterd_req_ctx_t *req_ctx = NULL;          dict_t             *dict    = NULL; +        xlator_t           *this    = NULL; + +        this = THIS; +        GF_ASSERT (this);          uuid_unparse (uuid, str); -        gf_log ("glusterd", GF_LOG_INFO, -                "Received op from uuid: %s", str); +        gf_log (this->name, GF_LOG_DEBUG, "Received op from uuid %s", str);          dict = dict_new ();          if (!dict) @@ -573,7 +585,7 @@ glusterd_req_ctx_create (rpcsvc_request_t *rpc_req,          req_ctx->op = op;          ret = dict_unserialize (buf_val, buf_len, &dict);          if (ret) { -                gf_log ("", GF_LOG_WARNING, +                gf_log (this->name, GF_LOG_WARNING,                          "failed to unserialize the dictionary");                  goto out;          } @@ -598,19 +610,23 @@ glusterd_handle_stage_op (rpcsvc_request_t *req)          glusterd_req_ctx_t              *req_ctx = NULL;          gd1_mgmt_stage_op_req           op_req = {{0},};          glusterd_peerinfo_t             *peerinfo = NULL; +        xlator_t                        *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          ret = xdr_to_generic (req->msg[0], &op_req,                                (xdrproc_t)xdr_gd1_mgmt_stage_op_req);          if (ret < 0) { -                //failed to decode msg; +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode stage " +                        "request received from peer");                  req->rpc_err = GARBAGE_ARGS;                  goto out;          }          if (glusterd_friend_find_by_uuid (op_req.uuid, &peerinfo)) { -                gf_log (THIS->name, GF_LOG_WARNING, "%s doesn't " +                gf_log (this->name, GF_LOG_WARNING, "%s doesn't "                          "belong to the cluster. Ignoring request.",                          uuid_utoa (op_req.uuid));                  ret = -1; @@ -639,19 +655,23 @@ glusterd_handle_commit_op (rpcsvc_request_t *req)          glusterd_req_ctx_t              *req_ctx = NULL;          gd1_mgmt_commit_op_req          op_req = {{0},};          glusterd_peerinfo_t             *peerinfo = NULL; +        xlator_t                        *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          ret = xdr_to_generic (req->msg[0], &op_req,                                (xdrproc_t)xdr_gd1_mgmt_commit_op_req);          if (ret < 0) { -                //failed to decode msg; +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode commit " +                        "request received from peer");                  req->rpc_err = GARBAGE_ARGS;                  goto out;          }          if (glusterd_friend_find_by_uuid (op_req.uuid, &peerinfo)) { -                gf_log (THIS->name, GF_LOG_WARNING, "%s doesn't " +                gf_log (this->name, GF_LOG_WARNING, "%s doesn't "                          "belong to the cluster. Ignoring request.",                          uuid_utoa (op_req.uuid));                  ret = -1; @@ -1549,8 +1569,7 @@ glusterd_op_lock_send_resp (rpcsvc_request_t *req, int32_t status)          ret = glusterd_submit_reply (req, &rsp, NULL, 0, NULL,                                       (xdrproc_t)xdr_gd1_mgmt_cluster_lock_rsp); -        gf_log ("glusterd", GF_LOG_INFO, -                "Responded, ret: %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Responded to lock, ret: %d", ret);          return 0;  } @@ -1569,8 +1588,7 @@ glusterd_op_unlock_send_resp (rpcsvc_request_t *req, int32_t status)          ret = glusterd_submit_reply (req, &rsp, NULL, 0, NULL,                                       (xdrproc_t)xdr_gd1_mgmt_cluster_unlock_rsp); -        gf_log ("glusterd", GF_LOG_INFO, -                "Responded to unlock, ret: %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Responded to unlock, ret: %d", ret);          return ret;  } @@ -1582,23 +1600,27 @@ glusterd_handle_cluster_unlock (rpcsvc_request_t *req)          int32_t                         ret = -1;          glusterd_op_lock_ctx_t          *ctx = NULL;          glusterd_peerinfo_t             *peerinfo = NULL; +        xlator_t                        *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          ret = xdr_to_generic (req->msg[0], &unlock_req,                                (xdrproc_t)xdr_gd1_mgmt_cluster_unlock_req);          if (ret < 0) { -                //failed to decode msg; +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode unlock " +                        "request received from peer");                  req->rpc_err = GARBAGE_ARGS;                  goto out;          } -        gf_log ("glusterd", GF_LOG_INFO, +        gf_log (this->name, GF_LOG_DEBUG,                  "Received UNLOCK from uuid: %s", uuid_utoa (unlock_req.uuid));          if (glusterd_friend_find_by_uuid (unlock_req.uuid, &peerinfo)) { -                gf_log (THIS->name, GF_LOG_WARNING, "%s doesn't " +                gf_log (this->name, GF_LOG_WARNING, "%s doesn't "                          "belong to the cluster. Ignoring request.",                          uuid_utoa (unlock_req.uuid));                  ret = -1; @@ -1630,8 +1652,12 @@ glusterd_op_stage_send_resp (rpcsvc_request_t   *req,  {          gd1_mgmt_stage_op_rsp           rsp      = {{0},};          int                             ret      = -1; +        xlator_t                       *this     = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req); +          rsp.op_ret = status;          glusterd_get_uuid (&rsp.uuid);          rsp.op = op; @@ -1643,7 +1669,7 @@ glusterd_op_stage_send_resp (rpcsvc_request_t   *req,          ret = dict_allocate_and_serialize (rsp_dict, &rsp.dict.dict_val,                                             &rsp.dict.dict_len);          if (ret < 0) { -                gf_log ("", GF_LOG_DEBUG, +                gf_log (this->name, GF_LOG_ERROR,                          "failed to get serialized length of dict");                  return ret;          } @@ -1651,8 +1677,7 @@ glusterd_op_stage_send_resp (rpcsvc_request_t   *req,          ret = glusterd_submit_reply (req, &rsp, NULL, 0, NULL,                                       (xdrproc_t)xdr_gd1_mgmt_stage_op_rsp); -        gf_log ("glusterd", GF_LOG_INFO, -                "Responded to stage, ret: %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Responded to stage, ret: %d", ret);          GF_FREE (rsp.dict.dict_val);          return ret; @@ -1665,7 +1690,10 @@ glusterd_op_commit_send_resp (rpcsvc_request_t *req,  {          gd1_mgmt_commit_op_rsp          rsp      = {{0}, };          int                             ret      = -1; +        xlator_t                        *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          rsp.op_ret = status;          glusterd_get_uuid (&rsp.uuid); @@ -1680,7 +1708,7 @@ glusterd_op_commit_send_resp (rpcsvc_request_t *req,                  ret = dict_allocate_and_serialize (rsp_dict, &rsp.dict.dict_val,                                                     &rsp.dict.dict_len);                  if (ret < 0) { -                        gf_log ("", GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_ERROR,                                  "failed to get serialized length of dict");                          goto out;                  } @@ -1690,8 +1718,7 @@ glusterd_op_commit_send_resp (rpcsvc_request_t *req,          ret = glusterd_submit_reply (req, &rsp, NULL, 0, NULL,                                       (xdrproc_t)xdr_gd1_mgmt_commit_op_rsp); -        gf_log ("glusterd", GF_LOG_INFO, -                "Responded to commit, ret: %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Responded to commit, ret: %d", ret);  out:          GF_FREE (rsp.dict.dict_val); diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c index 69e6fad8..ef262b85 100644 --- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c +++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c @@ -162,6 +162,10 @@ glusterd_brick_op_build_payload (glusterd_op_t op, glusterd_brickinfo_t *brickin          char                    *volname = NULL;          char                    name[1024] = {0,};          gf_xl_afr_op_t          heal_op = GF_AFR_OP_INVALID; +        xlator_t                *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (op < GD_OP_MAX);          GF_ASSERT (op > GD_OP_NONE); @@ -173,10 +177,8 @@ glusterd_brick_op_build_payload (glusterd_op_t op, glusterd_brickinfo_t *brickin          case GD_OP_STOP_VOLUME:                  brick_req = GF_CALLOC (1, sizeof (*brick_req),                                         gf_gld_mt_mop_brick_req_t); -                if (!brick_req) { -                        gf_log ("", GF_LOG_ERROR, "Out of Memory"); +                if (!brick_req)                          goto out; -                }                  brick_req->op = GLUSTERD_BRICK_TERMINATE;                  brick_req->name = "";          break; @@ -184,10 +186,8 @@ glusterd_brick_op_build_payload (glusterd_op_t op, glusterd_brickinfo_t *brickin                  brick_req = GF_CALLOC (1, sizeof (*brick_req),                                         gf_gld_mt_mop_brick_req_t); -                if (!brick_req) { -                        gf_log ("", GF_LOG_ERROR, "Out of Memory"); +                if (!brick_req)                          goto out; -                }                  brick_req->op = GLUSTERD_BRICK_XLATOR_INFO;                  brick_req->name = brickinfo->path; @@ -212,10 +212,8 @@ glusterd_brick_op_build_payload (glusterd_op_t op, glusterd_brickinfo_t *brickin          {                  brick_req = GF_CALLOC (1, sizeof (*brick_req),                                         gf_gld_mt_mop_brick_req_t); -                if (!brick_req) { -                        gf_log (THIS->name, GF_LOG_ERROR, "Out of memory"); +                if (!brick_req)                          goto out; -                }                  brick_req->op = GLUSTERD_BRICK_STATUS;                  brick_req->name = "";          } @@ -264,7 +262,7 @@ glusterd_brick_op_build_payload (glusterd_op_t op, glusterd_brickinfo_t *brickin  out:          if (ret && brick_req)                  GF_FREE (brick_req); -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -2119,7 +2117,7 @@ glusterd_op_ac_none (glusterd_op_sm_event_t *event, void *ctx)  {          int ret = 0; -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -2150,8 +2148,14 @@ glusterd_op_ac_send_lock (glusterd_op_sm_event_t *event, void *ctx)                  proc = &peerinfo->mgmt->proctable[GLUSTERD_MGMT_CLUSTER_LOCK];                  if (proc->fn) {                          ret = proc->fn (NULL, this, peerinfo); -                        if (ret) +                        if (ret) { +                                gf_log (this->name, GF_LOG_WARNING, "Failed to " +                                        "send lock request for operation " +                                        "'Volume %s' to peer %s", +                                        gd_op_list[opinfo.op], +                                        peerinfo->hostname);                                  continue; +                        }                          pending_count++;                  }          } @@ -2160,7 +2164,7 @@ glusterd_op_ac_send_lock (glusterd_op_sm_event_t *event, void *ctx)          if (!opinfo.pending_count)                  ret = glusterd_op_sm_inject_all_acc (); -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -2197,8 +2201,14 @@ glusterd_op_ac_send_unlock (glusterd_op_sm_event_t *event, void *ctx)                  proc = &peerinfo->mgmt->proctable[GLUSTERD_MGMT_CLUSTER_UNLOCK];                  if (proc->fn) {                          ret = proc->fn (NULL, this, peerinfo); -                        if (ret) +                        if (ret) { +                                gf_log (this->name, GF_LOG_WARNING, "Failed to " +                                        "send unlock request for operation " +                                        "'Volume %s' to peer %s", +                                        gd_op_list[opinfo.op], +                                        peerinfo->hostname);                                  continue; +                        }                          pending_count++;                  }          } @@ -2207,7 +2217,7 @@ glusterd_op_ac_send_unlock (glusterd_op_sm_event_t *event, void *ctx)          if (!opinfo.pending_count)                  ret = glusterd_op_sm_inject_all_acc (); -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret; @@ -2224,7 +2234,7 @@ glusterd_op_ac_ack_drain (glusterd_op_sm_event_t *event, void *ctx)          if (!opinfo.pending_count)                  ret = glusterd_op_sm_inject_event (GD_OP_EVENT_ALL_ACK, NULL); -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -2241,7 +2251,6 @@ glusterd_op_ac_lock (glusterd_op_sm_event_t *event, void *ctx)          glusterd_op_lock_ctx_t   *lock_ctx = NULL;          int32_t                  ret = 0; -          GF_ASSERT (event);          GF_ASSERT (ctx); @@ -2249,7 +2258,7 @@ glusterd_op_ac_lock (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_lock (lock_ctx->uuid); -        gf_log ("", GF_LOG_DEBUG, "Lock Returned %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Lock Returned %d", ret);          glusterd_op_lock_send_resp (lock_ctx->req, ret); @@ -2295,7 +2304,7 @@ glusterd_op_ac_local_unlock (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_unlock (*originator); -        gf_log ("", GF_LOG_DEBUG, "Unlock Returned %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Unlock Returned %d", ret);          return ret;  } @@ -2315,7 +2324,7 @@ glusterd_op_ac_rcvd_lock_acc (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_ALL_ACC, NULL); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);  out:          return ret; @@ -2671,7 +2680,10 @@ glusterd_op_ac_send_stage_op (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_build_payload (&dict, &op_errstr, NULL);          if (ret) { -                gf_log (THIS->name, GF_LOG_ERROR, "Building payload failed"); +                gf_log (this->name, GF_LOG_ERROR, LOGSTR_BUILD_PAYLOAD, +                        gd_op_list[op]); +                if (op_errstr == NULL) +                        gf_asprintf (&op_errstr, OPERRSTR_BUILD_PAYLOAD);                  opinfo.op_errstr = op_errstr;                  goto out;          } @@ -2686,7 +2698,12 @@ glusterd_op_ac_send_stage_op (glusterd_op_sm_event_t *event, void *ctx)          /* rsp_dict NULL from source */          ret = glusterd_op_stage_validate (op, dict, &op_errstr, NULL);          if (ret) { -                gf_log ("", GF_LOG_ERROR, "Staging failed"); +                gf_log (this->name, GF_LOG_ERROR, LOGSTR_STAGE_FAIL, +                        gd_op_list[op], "localhost", +                        (op_errstr) ? ":" : " ", (op_errstr) ? op_errstr : " "); +                if (op_errstr == NULL) +                        gf_asprintf (&op_errstr, OPERRSTR_STAGE_FAIL, +                                     "localhost");                  opinfo.op_errstr = op_errstr;                  goto out;          } @@ -2705,13 +2722,19 @@ glusterd_op_ac_send_stage_op (glusterd_op_sm_event_t *event, void *ctx)                  if (proc->fn) {                          ret = dict_set_static_ptr (dict, "peerinfo", peerinfo);                          if (ret) { -                                gf_log ("", GF_LOG_ERROR, "failed to set peerinfo"); +                                gf_log (this->name, GF_LOG_ERROR, "failed to " +                                        "set peerinfo");                                  goto out;                          }                          ret = proc->fn (NULL, this, dict); -                        if (ret) +                        if (ret) { +                                gf_log (this->name, GF_LOG_WARNING, "Failed to " +                                        "send stage request for operation " +                                        "'Volume %s' to peer %s", +                                        gd_op_list[op], peerinfo->hostname);                                  continue; +                        }                          pending_count++;                  }          } @@ -2725,13 +2748,14 @@ out:                  opinfo.op_ret = ret;          } -        gf_log ("glusterd", GF_LOG_INFO, "Sent op req to %d peers", +        gf_log (this->name, GF_LOG_DEBUG, "Sent stage op request for " +                "'Volume %s' to %d peers", gd_op_list[op],                  opinfo.pending_count);          if (!opinfo.pending_count)                  ret = glusterd_op_sm_inject_all_acc (); -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret; @@ -2795,6 +2819,10 @@ glusterd_op_volume_dict_uuid_to_hostname (dict_t *dict, const char *key_fmt,          char            *uuid_str = NULL;          uuid_t          uuid = {0,};          char            *hostname = NULL; +        xlator_t        *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (dict);          GF_ASSERT (key_fmt); @@ -2806,7 +2834,7 @@ glusterd_op_volume_dict_uuid_to_hostname (dict_t *dict, const char *key_fmt,                  if (ret)                          continue; -                gf_log (THIS->name, GF_LOG_DEBUG, "Got uuid %s", +                gf_log (this->name, GF_LOG_DEBUG, "Got uuid %s",                          uuid_str);                  ret = uuid_parse (uuid_str, uuid); @@ -2818,12 +2846,13 @@ glusterd_op_volume_dict_uuid_to_hostname (dict_t *dict, const char *key_fmt,                  hostname = glusterd_uuid_to_hostname (uuid);                  if (hostname) { -                        gf_log (THIS->name, GF_LOG_DEBUG, "%s -> %s", +                        gf_log (this->name, GF_LOG_DEBUG, "%s -> %s",                                  uuid_str, hostname);                          ret = dict_set_dynstr (dict, key, hostname);                          if (ret) { -                                gf_log (THIS->name, GF_LOG_ERROR, -                                        "Error setting hostname to dict"); +                                gf_log (this->name, GF_LOG_ERROR, +                                        "Error setting hostname %s to dict", +                                        hostname);                                  GF_FREE (hostname);                                  goto out;                          } @@ -2831,7 +2860,7 @@ glusterd_op_volume_dict_uuid_to_hostname (dict_t *dict, const char *key_fmt,          }  out: -        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -2848,10 +2877,14 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)          int             other_count = 0;          int             count = 0;          uint32_t        cmd = GF_CLI_STATUS_NONE; +        xlator_t        *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          op_ctx = glusterd_op_get_ctx();          if (!op_ctx) { -                gf_log (THIS->name, GF_LOG_CRITICAL, +                gf_log (this->name, GF_LOG_CRITICAL,                          "Operation context is not present.");                  goto out;          } @@ -2860,13 +2893,13 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)          case GD_OP_STATUS_VOLUME:                  ret = dict_get_uint32 (op_ctx, "cmd", &cmd);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Failed to get status cmd");                          goto out;                  }                  if (!(cmd & GF_CLI_STATUS_NFS || cmd & GF_CLI_STATUS_SHD ||                      (cmd & GF_CLI_STATUS_MASK) == GF_CLI_STATUS_NONE)) { -                        gf_log (THIS->name, GF_LOG_INFO, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "op_ctx modification not required for status "                                  "operation being performed");                          goto out; @@ -2875,14 +2908,14 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)                  ret = dict_get_int32 (op_ctx, "brick-index-max",                                        &brick_index_max);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Failed to get brick-index-max");                          goto out;                  }                  ret = dict_get_int32 (op_ctx, "other-count", &other_count);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Failed to get other-count");                          goto out;                  } @@ -2893,7 +2926,7 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)                                                                  "brick%d.path",                                                                  0, count);                  if (ret) -                        gf_log (THIS->name, GF_LOG_WARNING, +                        gf_log (this->name, GF_LOG_WARNING,                                  "Failed uuid to hostname conversion");                  break; @@ -2905,7 +2938,7 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)                  ret = dict_get_int32 (op_ctx, "count", &count);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Failed to get brick count");                          goto out;                  } @@ -2914,7 +2947,7 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)                                                                  "%d-brick",                                                                  1, (count + 1));                  if (ret) -                        gf_log (THIS->name, GF_LOG_WARNING, +                        gf_log (this->name, GF_LOG_WARNING,                                  "Failed uuid to hostname conversion");                  break; @@ -2925,7 +2958,7 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)          case GD_OP_DEFRAG_BRICK_VOLUME:                  ret = dict_get_int32 (op_ctx, "count", &count);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_DEBUG, +                        gf_log (this->name, GF_LOG_DEBUG,                                  "Failed to get count");                          goto out;                  } @@ -2934,13 +2967,13 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)                                                                  "node-uuid-%d",                                                                  1, (count + 1));                  if (ret) -                        gf_log (THIS->name, GF_LOG_WARNING, +                        gf_log (this->name, GF_LOG_WARNING,                                  "Failed uuid to hostname conversion");                  break;          default:                  ret = 0; -                gf_log (THIS->name, GF_LOG_INFO, +                gf_log (this->name, GF_LOG_DEBUG,                          "op_ctx modification not required");                  break; @@ -2948,7 +2981,7 @@ glusterd_op_modify_op_ctx (glusterd_op_t op)  out:          if (ret) -                gf_log (THIS->name, GF_LOG_WARNING, +                gf_log (this->name, GF_LOG_WARNING,                          "op_ctx modification failed");          return;  } @@ -3030,14 +3063,22 @@ glusterd_op_ac_send_commit_op (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_build_payload (&dict, &op_errstr, NULL);          if (ret) { -                gf_log (THIS->name, GF_LOG_ERROR, "Building payload failed"); +                gf_log (this->name, GF_LOG_ERROR, LOGSTR_BUILD_PAYLOAD, +                        gd_op_list[op]); +                if (op_errstr == NULL) +                        gf_asprintf (&op_errstr, OPERRSTR_BUILD_PAYLOAD);                  opinfo.op_errstr = op_errstr;                  goto out;          }          ret = glusterd_op_commit_perform (op, dict, &op_errstr, NULL); //rsp_dict invalid for source          if (ret) { -                gf_log (THIS->name, GF_LOG_ERROR, "Commit failed"); +                gf_log (this->name, GF_LOG_ERROR, LOGSTR_COMMIT_FAIL, +                        gd_op_list[op], "localhost", (op_errstr) ? ":" : " ", +                        (op_errstr) ? op_errstr : " "); +                if (op_errstr == NULL) +                        gf_asprintf (&op_errstr, OPERRSTR_COMMIT_FAIL, +                                     "localhost");                  opinfo.op_errstr = op_errstr;                  goto out;          } @@ -3057,20 +3098,25 @@ glusterd_op_ac_send_commit_op (glusterd_op_sm_event_t *event, void *ctx)                  if (proc->fn) {                          ret = dict_set_static_ptr (dict, "peerinfo", peerinfo);                          if (ret) { -                                gf_log (THIS->name, GF_LOG_ERROR, +                                gf_log (this->name, GF_LOG_ERROR,                                          "failed to set peerinfo");                                  goto out;                          }                          ret = proc->fn (NULL, this, dict); -                        if (ret) +                        if (ret) { +                                gf_log (this->name, GF_LOG_WARNING, "Failed to " +                                        "send commit request for operation " +                                        "'Volume %s' to peer %s", +                                        gd_op_list[op], peerinfo->hostname);                                  continue; +                        }                          pending_count++;                  }          }          opinfo.pending_count = pending_count; -        gf_log (THIS->name, GF_LOG_INFO, "Sent op req to %d peers", -                opinfo.pending_count); +        gf_log (this->name, GF_LOG_DEBUG, "Sent commit op req for 'Volume %s' " +                "to %d peers", gd_op_list[op], opinfo.pending_count);  out:          if (dict)                  dict_unref (dict); @@ -3091,7 +3137,7 @@ out:          }  err: -        gf_log (THIS->name, GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret; @@ -3113,7 +3159,7 @@ glusterd_op_ac_rcvd_stage_op_acc (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_STAGE_ACC, NULL);  out: -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3134,7 +3180,7 @@ glusterd_op_ac_stage_op_failed (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_ALL_ACK, NULL);  out: -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3155,7 +3201,7 @@ glusterd_op_ac_commit_op_failed (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_ALL_ACK, NULL);  out: -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3166,6 +3212,10 @@ glusterd_op_ac_brick_op_failed (glusterd_op_sm_event_t *event, void *ctx)          int                     ret = 0;          glusterd_op_brick_rsp_ctx_t *ev_ctx = NULL;          gf_boolean_t                free_errstr = _gf_false; +        xlator_t                    *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (event);          GF_ASSERT (ctx); @@ -3173,7 +3223,7 @@ glusterd_op_ac_brick_op_failed (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_remove_pending_entry (&opinfo.pending_bricks, ev_ctx->pending_node->node);          if (ret) { -                gf_log ("glusterd", GF_LOG_ERROR, "unknown response received "); +                gf_log (this->name, GF_LOG_ERROR, "unknown response received ");                  ret = -1;                  free_errstr = _gf_true;                  goto out; @@ -3199,7 +3249,7 @@ out:          if (free_errstr && ev_ctx->op_errstr)                  GF_FREE (ev_ctx->op_errstr);          GF_FREE (ctx); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3211,7 +3261,10 @@ glusterd_op_ac_rcvd_commit_op_acc (glusterd_op_sm_event_t *event, void *ctx)          int                     ret               = 0;          gf_boolean_t            commit_ack_inject = _gf_true;          glusterd_op_t           op                = GD_OP_NONE; +        xlator_t               *this = NULL; +        this = THIS; +        GF_ASSERT (this);          op = glusterd_op_get_op ();          GF_ASSERT (event); @@ -3224,7 +3277,7 @@ glusterd_op_ac_rcvd_commit_op_acc (glusterd_op_sm_event_t *event, void *ctx)          if (op == GD_OP_REPLACE_BRICK) {                  op_ctx = glusterd_op_get_ctx ();                  if (!op_ctx) { -                        gf_log (THIS->name, GF_LOG_CRITICAL, "Operation " +                        gf_log (this->name, GF_LOG_CRITICAL, "Operation "                                  "context is not present.");                          ret = -1;                          goto out; @@ -3232,7 +3285,7 @@ glusterd_op_ac_rcvd_commit_op_acc (glusterd_op_sm_event_t *event, void *ctx)                  ret = glusterd_op_start_rb_timer (op_ctx);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_ERROR, "Couldn't start " +                        gf_log (this->name, GF_LOG_ERROR, "Couldn't start "                                  "replace-brick operation.");                          goto out;                  } @@ -3271,7 +3324,7 @@ glusterd_op_ac_rcvd_unlock_acc (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_sm_inject_event (GD_OP_EVENT_ALL_ACC, NULL); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);  out:          return ret; @@ -3313,9 +3366,12 @@ glusterd_op_txn_complete ()          rpcsvc_request_t        *req = NULL;          void                    *ctx = NULL;          char                    *op_errstr = NULL; +        xlator_t                *this = NULL; +        this = THIS; +        GF_ASSERT (this); -        priv = THIS->private; +        priv = this->private;          GF_ASSERT (priv);          op  = glusterd_op_get_op (); @@ -3336,18 +3392,18 @@ glusterd_op_txn_complete ()          /* unlock cant/shouldnt fail here!! */          if (ret) { -                gf_log ("glusterd", GF_LOG_CRITICAL, +                gf_log (this->name, GF_LOG_CRITICAL,                          "Unable to clear local lock, ret: %d", ret);          } else { -                gf_log ("glusterd", GF_LOG_INFO, "Cleared local lock"); +                gf_log (this->name, GF_LOG_DEBUG, "Cleared local lock");          }          ret = glusterd_op_send_cli_response (op, op_ret,                                               op_errno, req, ctx, op_errstr);          if (ret) { -                gf_log ("", GF_LOG_ERROR, "Responding to cli failed, ret: %d", -                        ret); +                gf_log (this->name, GF_LOG_ERROR, "Responding to cli failed, " +                        "ret: %d", ret);                  //Ignore this error, else state machine blocks                  ret = 0;          } @@ -3359,7 +3415,7 @@ glusterd_op_txn_complete ()          if (priv->pending_quorum_action)                  glusterd_do_quorum_action (); -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3372,7 +3428,7 @@ glusterd_op_ac_unlocked_all (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_op_txn_complete (); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3386,7 +3442,10 @@ glusterd_op_ac_stage_op (glusterd_op_sm_event_t *event, void *ctx)          dict_t                  *rsp_dict  = NULL;          char                    *op_errstr = NULL;          dict_t                  *dict = NULL; +        xlator_t                *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (ctx);          req_ctx = ctx; @@ -3395,8 +3454,8 @@ glusterd_op_ac_stage_op (glusterd_op_sm_event_t *event, void *ctx)          rsp_dict = dict_new ();          if (!rsp_dict) { -                gf_log ("", GF_LOG_DEBUG, -                        "Out of memory"); +                gf_log (this->name, GF_LOG_ERROR, +                        "Failed to get new dictionary");                  return -1;          } @@ -3404,7 +3463,9 @@ glusterd_op_ac_stage_op (glusterd_op_sm_event_t *event, void *ctx)                                               rsp_dict);          if (status) { -                gf_log ("", GF_LOG_ERROR, "Validate failed: %d", status); +                gf_log (this->name, GF_LOG_ERROR, "Stage failed on operation" +                        " 'Volume %s', Status : %d", gd_op_list[req_ctx->op], +                        status);          }          ret = glusterd_op_stage_send_resp (req_ctx->req, req_ctx->op, @@ -3413,7 +3474,7 @@ glusterd_op_ac_stage_op (glusterd_op_sm_event_t *event, void *ctx)          if (op_errstr && (strcmp (op_errstr, "")))                  GF_FREE (op_errstr); -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          if (rsp_dict)                  dict_unref (rsp_dict); @@ -3470,7 +3531,10 @@ glusterd_op_ac_commit_op (glusterd_op_sm_event_t *event, void *ctx)          char                     *op_errstr  = NULL;          dict_t                   *dict       = NULL;          dict_t                   *rsp_dict   = NULL; +        xlator_t                 *this       = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (ctx);          req_ctx = ctx; @@ -3493,7 +3557,9 @@ glusterd_op_ac_commit_op (glusterd_op_sm_event_t *event, void *ctx)          }          if (status) -                gf_log (THIS->name, GF_LOG_ERROR, "Commit failed: %d", status); +                gf_log (this->name, GF_LOG_ERROR, "Commit of operation " +                        "'Volume %s' failed: %d", gd_op_list[req_ctx->op], +                        status);          ret = glusterd_op_commit_send_resp (req_ctx->req, req_ctx->op,                                              status, op_errstr, rsp_dict); @@ -3505,7 +3571,7 @@ glusterd_op_ac_commit_op (glusterd_op_sm_event_t *event, void *ctx)          if (rsp_dict)                  dict_unref (rsp_dict); -        gf_log (THIS->name, GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -3533,7 +3599,7 @@ glusterd_op_ac_send_commit_failed (glusterd_op_sm_event_t *event, void *ctx)                  opinfo.op_errstr = NULL;          } -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -3564,6 +3630,7 @@ glusterd_op_stage_validate (glusterd_op_t op, dict_t *dict, char **op_errstr,                              dict_t *rsp_dict)  {          int ret = -1; +        xlator_t *this = THIS;          switch (op) {                  case GD_OP_CREATE_VOLUME: @@ -3650,11 +3717,11 @@ glusterd_op_stage_validate (glusterd_op_t op, dict_t *dict, char **op_errstr,                          break;  #endif                  default: -                        gf_log ("", GF_LOG_ERROR, "Unknown op %d", -                                op); +                        gf_log (this->name, GF_LOG_ERROR, "Unknown op %s", +                                gd_op_list[op]);          } -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -3665,6 +3732,7 @@ glusterd_op_commit_perform (glusterd_op_t op, dict_t *dict, char **op_errstr,                              dict_t *rsp_dict)  {          int ret = -1; +        xlator_t *this = THIS;          glusterd_op_commit_hook (op, dict, GD_COMMIT_HOOK_PRE);          switch (op) { @@ -3751,14 +3819,14 @@ glusterd_op_commit_perform (glusterd_op_t op, dict_t *dict, char **op_errstr,                          break;  #endif                  default: -                        gf_log ("", GF_LOG_ERROR, "Unknown op %d", -                                op); +                        gf_log (this->name, GF_LOG_ERROR, "Unknown op %s", +                                gd_op_list[op]);                          break;          }          if (ret == 0)              glusterd_op_commit_hook (op, dict, GD_COMMIT_HOOK_POST); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -4111,7 +4179,7 @@ glusterd_handle_node_rsp (glusterd_req_ctx_t *req_ctx, void *pending_entry,                  break;          } -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -4125,15 +4193,17 @@ glusterd_bricks_select_stop_volume (dict_t *dict, char **op_errstr)          glusterd_brickinfo_t                    *brickinfo = NULL;          glusterd_pending_node_t                 *pending_node = NULL; -          ret = glusterd_op_stop_volume_args_get (dict, &volname, &flags);          if (ret)                  goto out;          ret  = glusterd_volinfo_find (volname, &volinfo); - -        if (ret) +        if (ret) { +                gf_log (THIS->name, GF_LOG_ERROR, FMTSTR_CHECK_VOL_EXISTS, +                        volname); +                gf_asprintf (op_errstr, FMTSTR_CHECK_VOL_EXISTS, volname);                  goto out; +        }          list_for_each_entry (brickinfo, &volinfo->bricks, brick_list) {                  if (glusterd_is_brick_started (brickinfo)) { @@ -4847,8 +4917,11 @@ glusterd_op_ac_send_brick_op (glusterd_op_sm_event_t *event, void *ctx)                  ret = glusterd_op_build_payload (&req_ctx->dict, &op_errstr,                                                   NULL);                  if (ret) { -                        gf_log (this->name, GF_LOG_ERROR, -                                "Building payload failed"); +                        gf_log (this->name, GF_LOG_ERROR, LOGSTR_BUILD_PAYLOAD, +                                gd_op_list[op]); +                        if (op_errstr == NULL) +                                gf_asprintf (&op_errstr, +                                             OPERRSTR_BUILD_PAYLOAD);                          opinfo.op_errstr = op_errstr;                          goto out;                  } @@ -4867,7 +4940,7 @@ glusterd_op_ac_send_brick_op (glusterd_op_sm_event_t *event, void *ctx)          }  out: -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } @@ -4884,7 +4957,10 @@ glusterd_op_ac_rcvd_brick_op_acc (glusterd_op_sm_event_t *event, void *ctx)          dict_t                      *op_ctx = NULL;          glusterd_req_ctx_t          *req_ctx = NULL;          void                        *pending_entry = NULL; +        xlator_t                    *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (event);          GF_ASSERT (ctx);          ev_ctx = ctx; @@ -4900,7 +4976,7 @@ glusterd_op_ac_rcvd_brick_op_acc (glusterd_op_sm_event_t *event, void *ctx)          ret = glusterd_remove_pending_entry (&opinfo.pending_bricks,                                               pending_entry);          if (ret) { -                gf_log ("glusterd", GF_LOG_ERROR, "unknown response received "); +                gf_log (this->name, GF_LOG_ERROR, "unknown response received ");                  ret = -1;                  goto out;          } @@ -4920,7 +4996,7 @@ out:          if (ev_ctx->rsp_dict)                  dict_unref (ev_ctx->rsp_dict);          GF_FREE (ev_ctx); -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -4968,7 +5044,7 @@ glusterd_op_bricks_select (glusterd_op_t op, dict_t *dict, char **op_errstr)                  break;           } -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -5300,7 +5376,7 @@ glusterd_op_sm_inject_event (glusterd_op_sm_event_type_t event_type,          event->ctx = ctx; -        gf_log ("glusterd", GF_LOG_DEBUG, "Enqueue event: '%s'", +        gf_log (THIS->name, GF_LOG_DEBUG, "Enqueue event: '%s'",                  glusterd_op_sm_event_name_get (event->event));          list_add_tail (&event->list, &gd_op_sm_queue); @@ -5359,9 +5435,13 @@ glusterd_op_sm ()          glusterd_op_sm_ac_fn            handler = NULL;          glusterd_op_sm_t                *state = NULL;          glusterd_op_sm_event_type_t     event_type = GD_OP_EVENT_NONE; +        xlator_t                        *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          if ((lock_err = pthread_mutex_trylock (&gd_op_sm_lock))) { -                gf_log (THIS->name, GF_LOG_DEBUG, "lock failed due to %s", +                gf_log (this->name, GF_LOG_ERROR, "lock failed due to %s",                          strerror (lock_err));                  goto lock_failed;          } @@ -5372,7 +5452,8 @@ glusterd_op_sm ()                          list_del_init (&event->list);                          event_type = event->event; -                        gf_log ("", GF_LOG_DEBUG, "Dequeued event of type: '%s'", +                        gf_log (this->name, GF_LOG_DEBUG, "Dequeued event of " +                                "type: '%s'",                                  glusterd_op_sm_event_name_get(event_type));                          state = glusterd_op_state_table[opinfo.state.state]; @@ -5385,7 +5466,7 @@ glusterd_op_sm ()                          ret = handler (event, event->ctx);                          if (ret) { -                                gf_log ("glusterd", GF_LOG_ERROR, +                                gf_log (this->name, GF_LOG_ERROR,                                          "handler returned: %d", ret);                                  glusterd_destroy_op_event_ctx (event);                                  GF_FREE (event); @@ -5396,7 +5477,7 @@ glusterd_op_sm ()                                                                  event_type);                          if (ret) { -                                gf_log ("glusterd", GF_LOG_ERROR, +                                gf_log (this->name, GF_LOG_ERROR,                                          "Unable to transition"                                          "state from '%s' to '%s'",                           glusterd_op_sm_state_name_get(opinfo.state.state), @@ -5464,11 +5545,15 @@ glusterd_op_init_ctx (glusterd_op_t op)  {          int     ret = 0;          dict_t *dict = NULL; +        xlator_t *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (GD_OP_NONE < op && op < GD_OP_MAX);          if (_gf_false == glusterd_need_brick_op (op)) { -                gf_log ("", GF_LOG_DEBUG, "Received op: %d, returning", op); +                gf_log (this->name, GF_LOG_DEBUG, "Received op: %s, returning", +                        gd_op_list[op]);                  goto out;          }          dict = dict_new (); @@ -5480,7 +5565,7 @@ glusterd_op_init_ctx (glusterd_op_t op)          if (ret)                  goto out;  out: -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } diff --git a/xlators/mgmt/glusterd/src/glusterd-rpc-ops.c b/xlators/mgmt/glusterd/src/glusterd-rpc-ops.c index d0db98d7..14f4e86d 100644 --- a/xlators/mgmt/glusterd/src/glusterd-rpc-ops.c +++ b/xlators/mgmt/glusterd/src/glusterd-rpc-ops.c @@ -515,7 +515,10 @@ glusterd_cluster_lock_cbk (struct rpc_req *req, struct iovec *iov,          int32_t                       op_ret = -1;          glusterd_op_sm_event_type_t   event_type = GD_OP_EVENT_NONE;          glusterd_peerinfo_t           *peerinfo = NULL; +        xlator_t                      *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          if (-1 == req->rpc_status) { @@ -526,7 +529,8 @@ glusterd_cluster_lock_cbk (struct rpc_req *req, struct iovec *iov,          ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gd1_mgmt_cluster_lock_rsp);          if (ret < 0) { -                gf_log ("", GF_LOG_ERROR, "error"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode lock " +                        "response received from peer");                  rsp.op_ret   = -1;                  rsp.op_errno = EINVAL;                  goto out; @@ -535,20 +539,23 @@ glusterd_cluster_lock_cbk (struct rpc_req *req, struct iovec *iov,  out:          op_ret = rsp.op_ret; -        gf_log ("glusterd", GF_LOG_INFO, -                "Received %s from uuid: %s", -                (op_ret)?"RJT":"ACC", uuid_utoa (rsp.uuid)); +        gf_log (this->name, (op_ret) ? GF_LOG_ERROR : GF_LOG_DEBUG, +                "Received lock %s from uuid: %s", (op_ret) ? "RJT" : "ACC", +                uuid_utoa (rsp.uuid));          ret = glusterd_friend_find (rsp.uuid, NULL, &peerinfo);          if (ret) { -                gf_log ("", GF_LOG_CRITICAL, "Lock response received from " -                        "unknown peer: %s", uuid_utoa (rsp.uuid)); +                gf_log (this->name, GF_LOG_CRITICAL, "Lock response received " +                        "from unknown peer: %s", uuid_utoa (rsp.uuid));          }          if (op_ret) {                  event_type = GD_OP_EVENT_RCVD_RJT;                  opinfo.op_ret = op_ret; +                opinfo.op_errstr = gf_strdup ("Another transaction could be in " +                                              "progress. Please try again after" +                                              " sometime.");          } else {                  event_type = GD_OP_EVENT_RCVD_ACC;          } @@ -573,8 +580,10 @@ glusterd_cluster_unlock_cbk (struct rpc_req *req, struct iovec *iov,          int32_t                       op_ret = -1;          glusterd_op_sm_event_type_t   event_type = GD_OP_EVENT_NONE;          glusterd_peerinfo_t           *peerinfo = NULL; +        xlator_t                      *this = NULL; - +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          if (-1 == req->rpc_status) { @@ -585,7 +594,8 @@ glusterd_cluster_unlock_cbk (struct rpc_req *req, struct iovec *iov,          ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gd1_mgmt_cluster_unlock_rsp);          if (ret < 0) { -                gf_log ("", GF_LOG_ERROR, "error"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode unlock " +                        "response received from peer");                  rsp.op_ret   = -1;                  rsp.op_errno = EINVAL;                  goto out; @@ -594,15 +604,15 @@ glusterd_cluster_unlock_cbk (struct rpc_req *req, struct iovec *iov,  out:          op_ret = rsp.op_ret; -        gf_log ("glusterd", GF_LOG_INFO, -                "Received %s from uuid: %s", +        gf_log (this->name, (op_ret) ? GF_LOG_ERROR : GF_LOG_DEBUG, +                "Received unlock %s from uuid: %s",                  (op_ret)?"RJT":"ACC", uuid_utoa (rsp.uuid));          ret = glusterd_friend_find (rsp.uuid, NULL, &peerinfo);          if (ret) { -                gf_log ("", GF_LOG_CRITICAL, "Unlock response received from " -                        "unknown peer %s", uuid_utoa (rsp.uuid)); +                gf_log (this->name, GF_LOG_CRITICAL, "Unlock response received " +                        "from unknown peer %s", uuid_utoa (rsp.uuid));          }          if (op_ret) { @@ -635,7 +645,10 @@ glusterd_stage_op_cbk (struct rpc_req *req, struct iovec *iov,          dict_t                        *dict   = NULL;          char                          err_str[2048] = {0};          char                          *peer_str = NULL; +        xlator_t                      *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          if (-1 == req->rpc_status) { @@ -649,12 +662,14 @@ glusterd_stage_op_cbk (struct rpc_req *req, struct iovec *iov,          ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gd1_mgmt_stage_op_rsp);          if (ret < 0) { -                gf_log ("", GF_LOG_ERROR, "error"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode stage " +                        "response received from peer");                  rsp.op_ret   = -1;                  rsp.op_errno = EINVAL;                  /* use standard allocation because to keep uniformity                     in freeing it */ -                rsp.op_errstr = strdup ("xdr decoding failed"); +                rsp.op_errstr = strdup ("Failed to decode stage response " +                                        "received from peer.");                  goto out;          } @@ -666,7 +681,7 @@ glusterd_stage_op_cbk (struct rpc_req *req, struct iovec *iov,                                          rsp.dict.dict_len,                                          &dict);                  if (ret < 0) { -                        gf_log ("glusterd", GF_LOG_ERROR, +                        gf_log (this->name, GF_LOG_ERROR,                                  "failed to "                                  "unserialize rsp-buffer to dictionary");  			event_type = GD_OP_EVENT_RCVD_RJT; @@ -679,15 +694,15 @@ glusterd_stage_op_cbk (struct rpc_req *req, struct iovec *iov,  out:          op_ret = rsp.op_ret; -        gf_log ("glusterd", GF_LOG_INFO, -                "Received %s from uuid: %s", -                (op_ret)?"RJT":"ACC", uuid_utoa (rsp.uuid)); +        gf_log (this->name, (op_ret) ? GF_LOG_ERROR : GF_LOG_DEBUG, +                "Received stage %s from uuid: %s", +                (op_ret) ? "RJT" : "ACC", uuid_utoa (rsp.uuid));          ret = glusterd_friend_find (rsp.uuid, NULL, &peerinfo);          if (ret) { -                gf_log ("", GF_LOG_CRITICAL, "Stage response received from " -                        "unknown peer: %s", uuid_utoa (rsp.uuid)); +                gf_log (this->name, GF_LOG_CRITICAL, "Stage response received " +                        "from unknown peer: %s", uuid_utoa (rsp.uuid));          }          if (op_ret) { @@ -700,12 +715,11 @@ out:                                  peer_str = peerinfo->hostname;                          else                                  peer_str = uuid_utoa (rsp.uuid); -                        snprintf (err_str, sizeof (err_str), "Operation failed " -                                  "on %s", peer_str); +                        snprintf (err_str, sizeof (err_str), +                                  OPERRSTR_STAGE_FAIL, peer_str);                          opinfo.op_errstr = gf_strdup (err_str);                  }                  if (!opinfo.op_errstr) { -                        gf_log ("", GF_LOG_ERROR, "memory allocation failed");                          ret = -1;                          goto out;                  } @@ -750,8 +764,10 @@ glusterd_commit_op_cbk (struct rpc_req *req, struct iovec *iov,          dict_t                        *dict = NULL;          char                          err_str[2048] = {0};          char                          *peer_str = NULL; +        xlator_t                      *this = NULL; - +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          if (-1 == req->rpc_status) { @@ -766,12 +782,14 @@ glusterd_commit_op_cbk (struct rpc_req *req, struct iovec *iov,          ret = xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gd1_mgmt_commit_op_rsp);          if (ret < 0) { -                gf_log ("", GF_LOG_ERROR, "xdr decoding error"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode commit " +                        "response received from peer");                  rsp.op_ret   = -1;                  rsp.op_errno = EINVAL;                  /* use standard allocation because to keep uniformity                     in freeing it */ -                rsp.op_errstr = strdup ("xdr decoding error"); +                rsp.op_errstr = strdup ("Failed to decode commit response " +                                        "received from peer.");  		event_type = GD_OP_EVENT_RCVD_RJT;                  goto out;          } @@ -784,7 +802,7 @@ glusterd_commit_op_cbk (struct rpc_req *req, struct iovec *iov,                                          rsp.dict.dict_len,                                          &dict);                  if (ret < 0) { -                        gf_log ("glusterd", GF_LOG_ERROR, +                        gf_log (this->name, GF_LOG_ERROR,                                  "failed to "                                  "unserialize rsp-buffer to dictionary");  			event_type = GD_OP_EVENT_RCVD_RJT; @@ -796,15 +814,16 @@ glusterd_commit_op_cbk (struct rpc_req *req, struct iovec *iov,          op_ret = rsp.op_ret; -        gf_log ("glusterd", GF_LOG_INFO, -                "Received %s from uuid: %s", +        gf_log (this->name, (op_ret) ? GF_LOG_ERROR : GF_LOG_DEBUG, +                "Received commit %s from uuid: %s",                  (op_ret)?"RJT":"ACC", uuid_utoa (rsp.uuid));          ret = glusterd_friend_find (rsp.uuid, NULL, &peerinfo);          if (ret) { -                gf_log ("", GF_LOG_CRITICAL, "Commit response received from " -                        "unknown peer: %s", uuid_utoa (rsp.uuid)); +                gf_log (this->name, GF_LOG_CRITICAL, "Commit response for " +                        "'Volume %s' received from unknown peer: %s", +                        gd_op_list[opinfo.op], uuid_utoa (rsp.uuid));          }          if (op_ret) { @@ -817,12 +836,11 @@ glusterd_commit_op_cbk (struct rpc_req *req, struct iovec *iov,                                  peer_str = peerinfo->hostname;                          else                                  peer_str = uuid_utoa (rsp.uuid); -                        snprintf (err_str, sizeof (err_str), "Operation failed " -                                  "on %s", peer_str); +                        snprintf (err_str, sizeof (err_str), +                                  OPERRSTR_COMMIT_FAIL, peer_str);                          opinfo.op_errstr = gf_strdup (err_str);                  }                  if (!opinfo.op_errstr) { -                        gf_log ("", GF_LOG_ERROR, "memory allocation failed");                          ret = -1;                          goto out;                  } @@ -1105,7 +1123,7 @@ glusterd_cluster_lock (call_frame_t *frame, xlator_t *this,                                         this, glusterd_cluster_lock_cbk,                                         (xdrproc_t)xdr_gd1_mgmt_cluster_lock_req);  out: -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -1139,7 +1157,7 @@ glusterd_cluster_unlock (call_frame_t *frame, xlator_t *this,                                         this, glusterd_cluster_unlock_cbk,                                         (xdrproc_t)xdr_gd1_mgmt_cluster_unlock_req);  out: -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -1176,8 +1194,11 @@ glusterd_stage_op (call_frame_t *frame, xlator_t *this,          ret = dict_allocate_and_serialize (dict, &req.buf.buf_val,                                             &req.buf.buf_len); -        if (ret) +        if (ret) { +                gf_log (this->name, GF_LOG_ERROR, "Failed to serialize dict " +                        "to request buffer");                  goto out; +        }          dummy_frame = create_frame (this, this->ctx->pool); @@ -1194,7 +1215,7 @@ out:          if ((_gf_true == is_alloc) && req.buf.buf_val)                  GF_FREE (req.buf.buf_val); -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -1230,8 +1251,11 @@ glusterd_commit_op (call_frame_t *frame, xlator_t *this,          ret = dict_allocate_and_serialize (dict, &req.buf.buf_val,                                             &req.buf.buf_len); -        if (ret) +        if (ret) { +                gf_log (this->name, GF_LOG_ERROR, "Failed to serialize dict to " +                        "request buffer");                  goto out; +        }          dummy_frame = create_frame (this, this->ctx->pool);          if (!dummy_frame) @@ -1247,7 +1271,7 @@ out:          if ((_gf_true == is_alloc) && req.buf.buf_val)                  GF_FREE (req.buf.buf_val); -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -1265,6 +1289,10 @@ glusterd_brick_op_cbk (struct rpc_req *req, struct iovec *iov,          int                           index = 0;          glusterd_req_ctx_t            *req_ctx = NULL;          glusterd_pending_node_t       *node = NULL; +        xlator_t                      *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (req);          frame = myframe; @@ -1282,7 +1310,8 @@ glusterd_brick_op_cbk (struct rpc_req *req, struct iovec *iov,          ret =  xdr_to_generic (*iov, &rsp, (xdrproc_t)xdr_gd1_mgmt_brick_op_rsp);          if (ret < 0) { -                gf_log ("", GF_LOG_ERROR, "error"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to decode brick op " +                        "response received");                  rsp.op_ret   = -1;                  rsp.op_errno = EINVAL;                  rsp.op_errstr = strdup ("Unable to decode brick op response"); @@ -1298,8 +1327,7 @@ glusterd_brick_op_cbk (struct rpc_req *req, struct iovec *iov,                                          rsp.output.output_len,                                          &dict);                  if (ret < 0) { -                        gf_log ("glusterd", GF_LOG_ERROR, -                                "failed to " +                        gf_log (this->name, GF_LOG_ERROR, "Failed to "                                  "unserialize rsp-buffer to dictionary");  			event_type = GD_OP_EVENT_RCVD_RJT;                          goto out; @@ -1316,7 +1344,7 @@ glusterd_brick_op_cbk (struct rpc_req *req, struct iovec *iov,                  index = node->index;                  ret = dict_set_int32 (dict, "index", index);                  if (ret) { -                        gf_log (THIS->name, GF_LOG_ERROR, +                        gf_log (this->name, GF_LOG_ERROR,                                  "Error setting index on brick status rsp dict");                          rsp.op_ret = -1;                          event_type = GD_OP_EVENT_RCVD_RJT; @@ -1377,7 +1405,9 @@ glusterd_brick_op (call_frame_t *frame, xlator_t *this,          ret = glusterd_op_bricks_select (req_ctx->op, req_ctx->dict, &op_errstr);          if (ret) { -                gf_log ("", GF_LOG_ERROR, "Brick Op failed"); +                gf_log (this->name, GF_LOG_ERROR, "Failed to select bricks " +                        "while performing brick op during 'Volume %s'", +                        gd_op_list[opinfo.op]);                  opinfo.op_errstr = op_errstr;                  goto out;          } @@ -1394,14 +1424,19 @@ glusterd_brick_op (call_frame_t *frame, xlator_t *this,                                  (req_ctx->op,                                   (gd1_mgmt_brick_op_req **)&req,                                   req_ctx->dict); -                else +                else {                          ret = glusterd_brick_op_build_payload                                  (req_ctx->op, pending_node->node,                                   (gd1_mgmt_brick_op_req **)&req,                                   req_ctx->dict); -                if (ret) -                        goto out; +                        if (ret) { +                                gf_log (this->name, GF_LOG_ERROR, "Failed to " +                                        "build brick op payload during " +                                        "'Volume %s'", gd_op_list[req_ctx->op]); +                                goto out; +                        } +                }                  dummy_frame->local = data;                  dummy_frame->cookie = pending_node; @@ -1447,7 +1482,8 @@ glusterd_brick_op (call_frame_t *frame, xlator_t *this,                          pending_bricks++;          } -        gf_log ("glusterd", GF_LOG_DEBUG, "Sent op req to %d bricks", +        gf_log (this->name, GF_LOG_DEBUG, "Sent brick op req for operation " +                "'Volume %s' to %d bricks", gd_op_list[req_ctx->op],                  pending_bricks);          opinfo.brick_pending_count = pending_bricks; @@ -1456,7 +1492,7 @@ out:                  glusterd_op_sm_inject_event (GD_OP_EVENT_RCVD_RJT, data);                  opinfo.op_ret = ret;          } -        gf_log ("glusterd", GF_LOG_DEBUG, "Returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } diff --git a/xlators/mgmt/glusterd/src/glusterd-store.c b/xlators/mgmt/glusterd/src/glusterd-store.c index bbca016e..6f67a1bf 100644 --- a/xlators/mgmt/glusterd/src/glusterd-store.c +++ b/xlators/mgmt/glusterd/src/glusterd-store.c @@ -450,11 +450,14 @@ glusterd_store_delete_brick (glusterd_volinfo_t *volinfo,          char                    brickpath[PATH_MAX] = {0,};          char                    *ptr = NULL;          char                    *tmppath = NULL; +        xlator_t                *this = NULL; +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (volinfo);          GF_ASSERT (brickinfo); -        priv = THIS->private; +        priv = this->private;          GF_ASSERT (priv); @@ -477,8 +480,8 @@ glusterd_store_delete_brick (glusterd_volinfo_t *volinfo,          ret = unlink (brickpath);          if ((ret < 0) && (errno != ENOENT)) { -                gf_log ("", GF_LOG_ERROR, "Unlink failed on %s, reason: %s", -                        brickpath, strerror(errno)); +                gf_log (this->name, GF_LOG_ERROR, "Unlink failed on %s, " +                        "reason: %s", brickpath, strerror(errno));                  ret = -1;                  goto out;          } else { @@ -490,7 +493,7 @@ out:                  glusterd_store_handle_destroy (brickinfo->shandle);                  brickinfo->shandle = NULL;          } -        gf_log ("", GF_LOG_DEBUG, "Returning with %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "Returning with %d", ret);          return ret;  } diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index 1a59e272..d093301c 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -291,21 +291,25 @@ glusterd_unlock (uuid_t uuid)          char    new_owner_str[50];          char    owner_str[50];          int32_t ret = -1; +        xlator_t *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (uuid);          glusterd_get_lock_owner (&owner);          if (uuid_is_null (owner)) { -                gf_log ("glusterd", GF_LOG_ERROR, "Cluster lock not held!"); +                gf_log (this->name, GF_LOG_ERROR, "Cluster lock not held!");                  goto out;          }          ret = uuid_compare (uuid, owner);          if (ret) { -               gf_log ("glusterd", GF_LOG_ERROR, "Cluster lock held by %s" -                        " ,unlock req from %s!", uuid_utoa_r (owner ,owner_str) +               gf_log (this->name, GF_LOG_ERROR, "Cluster lock held by %s ," +                       "unlock req from %s!", uuid_utoa_r (owner ,owner_str)                          , uuid_utoa_r (uuid, new_owner_str));                 goto out;          } @@ -313,7 +317,7 @@ glusterd_unlock (uuid_t uuid)          ret = glusterd_unset_lock_owner (uuid);          if (ret) { -                gf_log ("glusterd", GF_LOG_ERROR, "Unable to clear cluster " +                gf_log (this->name, GF_LOG_ERROR, "Unable to clear cluster "                          "lock");                  goto out;          } @@ -1009,15 +1013,18 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,          pid_t    pid = -1;          FILE    *file = NULL;          gf_boolean_t is_locked = _gf_false; +        xlator_t *this = NULL; +        this = THIS; +        GF_ASSERT (this);          file = fopen (pidfile, "r+");          if (!file) { -                gf_log ("", GF_LOG_ERROR, "Unable to open pidfile: %s", +                gf_log (this->name, GF_LOG_ERROR, "Unable to open pidfile: %s",                                  pidfile);                  if (errno == ENOENT) { -                        gf_log ("",GF_LOG_TRACE, "%s may not be running", -                                service); +                        gf_log (this->name, GF_LOG_TRACE, "%s may not be " +                                "running", service);                          ret = 0;                          goto out;                  } @@ -1029,11 +1036,12 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,                  is_locked = _gf_true;                  ret = unlink (pidfile);                  if (ret && (ENOENT != errno)) { -                        gf_log ("", GF_LOG_ERROR, "Unable to " +                        gf_log (this->name, GF_LOG_ERROR, "Unable to "                                  "unlink stale pidfile: %s", pidfile);                  } else if (ret && (ENOENT == errno)){                          ret = 0; -                        gf_log ("", GF_LOG_INFO, "Brick already stopped"); +                        gf_log (this->name, GF_LOG_DEBUG, "Brick already " +                                "stopped");                  }                  goto out;          } @@ -1041,7 +1049,7 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,          ret = fscanf (file, "%d", &pid);          if (ret <= 0) { -                gf_log ("", GF_LOG_ERROR, "Unable to read pidfile: %s", +                gf_log (this->name, GF_LOG_ERROR, "Unable to read pidfile: %s",                                  pidfile);                  ret = -1;                  goto out; @@ -1049,8 +1057,8 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,          fclose (file);          file = NULL; -        gf_log ("", GF_LOG_INFO, "Stopping gluster %s running in pid: %d", -                service, pid); +        gf_log (this->name, GF_LOG_DEBUG, "Stopping gluster %s running in pid: " +                "%d", service, pid);          ret = kill (pid, sig); @@ -1065,7 +1073,7 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,                  if (ret && ((EAGAIN == errno) || (EACCES == errno))) {                          ret = kill (pid, SIGKILL);                          if (ret) { -                                gf_log ("", GF_LOG_ERROR, "Unable to " +                                gf_log (this->name, GF_LOG_ERROR, "Unable to "                                          "kill pid %d reason: %s", pid,                                          strerror(errno));                                  goto out; @@ -1076,7 +1084,7 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,                  }                  ret = unlink (pidfile);                  if (ret && (ENOENT != errno)) { -                        gf_log ("", GF_LOG_ERROR, "Unable to " +                        gf_log (this->name, GF_LOG_ERROR, "Unable to "                                  "unlink pidfile: %s", pidfile);                          goto out;                  } @@ -1086,8 +1094,9 @@ glusterd_service_stop (const char *service, char *pidfile, int sig,  out:          if (is_locked && file)                  if (lockf (fileno (file), F_ULOCK, 0) < 0) -                        gf_log ("", GF_LOG_WARNING, "Cannot unlock pidfile: %s" -                                " reason: %s", pidfile, strerror(errno)); +                        gf_log (this->name, GF_LOG_WARNING, "Cannot unlock " +                                "pidfile: %s reason: %s", pidfile, +                                strerror(errno));          if (file)                  fclose (file);          return ret; @@ -1377,7 +1386,7 @@ glusterd_brick_unlink_socket_file (glusterd_volinfo_t *volinfo,          if (ret && (ENOENT == errno)) {                  ret = 0;          } else { -                gf_log ("glusterd", GF_LOG_ERROR, "Failed to remove %s" +                gf_log (this->name, GF_LOG_ERROR, "Failed to remove %s"                          " error: %s", socketpath, strerror (errno));          } @@ -4750,8 +4759,7 @@ glusterd_brick_stop (glusterd_volinfo_t *volinfo,          if (uuid_is_null (brickinfo->uuid)) {                  ret = glusterd_resolve_brick (brickinfo);                  if (ret) { -                        gf_log ("glusterd", GF_LOG_ERROR, -                                "cannot resolve brick: %s:%s", +                        gf_log (this->name, GF_LOG_ERROR, FMTSTR_RESOLVE_BRICK,                                  brickinfo->hostname, brickinfo->path);                          goto out;                  } @@ -4764,19 +4772,19 @@ glusterd_brick_stop (glusterd_volinfo_t *volinfo,                  goto out;          } -        gf_log ("", GF_LOG_INFO, "About to stop glusterfs" +        gf_log (this->name, GF_LOG_DEBUG, "About to stop glusterfs"                  " for brick %s:%s", brickinfo->hostname,                  brickinfo->path);          ret = glusterd_volume_stop_glusterfs (volinfo, brickinfo, del_brick);          if (ret) { -                gf_log ("", GF_LOG_CRITICAL, "Unable to remove" +                gf_log (this->name, GF_LOG_CRITICAL, "Unable to stop"                          " brick: %s:%s", brickinfo->hostname,                          brickinfo->path);                  goto out;          }  out: -        gf_log ("", GF_LOG_DEBUG, "returning %d ", ret); +        gf_log (this->name, GF_LOG_DEBUG, "returning %d ", ret);          return ret;  } @@ -5238,6 +5246,10 @@ glusterd_sm_tr_log_transition_add (glusterd_sm_tr_log_t *log,          glusterd_sm_transition_t *transitions = NULL;          int                      ret = -1;          int                      next = 0; +        xlator_t                 *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          GF_ASSERT (log);          if (!log) @@ -5260,11 +5272,11 @@ glusterd_sm_tr_log_transition_add (glusterd_sm_tr_log_t *log,          if (log->count < log->size)                  log->count++;          ret = 0; -        gf_log ("glusterd", GF_LOG_DEBUG, "Transitioning from '%s' to '%s' " +        gf_log (this->name, GF_LOG_DEBUG, "Transitioning from '%s' to '%s' "                  "due to event '%s'", log->state_name_get (old_state),                  log->state_name_get (new_state), log->event_name_get (event));  out: -        gf_log ("", GF_LOG_DEBUG, "returning %d", ret); +        gf_log (this->name, GF_LOG_DEBUG, "returning %d", ret);          return ret;  } @@ -5354,7 +5366,7 @@ glusterd_remove_pending_entry (struct list_head *list, void *elem)                  }          }  out: -        gf_log ("", GF_LOG_DEBUG, "returning %d", ret); +        gf_log (THIS->name, GF_LOG_DEBUG, "returning %d", ret);          return ret;  } diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c index 6f933e68..b75b35db 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volume-ops.c +++ b/xlators/mgmt/glusterd/src/glusterd-volume-ops.c @@ -309,8 +309,10 @@ glusterd_handle_cli_stop_volume (rpcsvc_request_t *req)          ret = xdr_to_generic (req->msg[0], &cli_req, (xdrproc_t)xdr_gf_cli_req);          if (ret < 0) { -                //failed to decode msg; +                snprintf (err_str, sizeof (err_str), "Failed to decode message " +                          "received from cli");                  req->rpc_err = GARBAGE_ARGS; +                gf_log (this->name, GF_LOG_ERROR, "%s", err_str);                  goto out;          }          if (cli_req.dict.dict_len) { @@ -339,7 +341,7 @@ glusterd_handle_cli_stop_volume (rpcsvc_request_t *req)                  goto out;          } -        gf_log (this->name, GF_LOG_INFO, "Received stop vol req " +        gf_log (this->name, GF_LOG_DEBUG, "Received stop vol req "                  "for volume %s", dup_volname);          ret = glusterd_op_begin (req, GD_OP_STOP_VOLUME, dict, @@ -806,19 +808,23 @@ int  glusterd_op_stop_volume_args_get (dict_t *dict, char** volname, int *flags)  {          int ret = -1; +        xlator_t *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          if (!dict || !volname || !flags)                  goto out;          ret = dict_get_str (dict, "volname", volname);          if (ret) { -                gf_log ("", GF_LOG_ERROR, "Unable to get volume name"); +                gf_log (this->name, GF_LOG_ERROR, "Unable to get volume name");                  goto out;          }          ret = dict_get_int32 (dict, "flags", flags);          if (ret) { -                gf_log ("", GF_LOG_ERROR, "Unable to get flags"); +                gf_log (this->name, GF_LOG_ERROR, "Unable to get flags");                  goto out;          }  out: @@ -936,7 +942,10 @@ glusterd_op_stage_stop_volume (dict_t *dict, char **op_errstr)          gf_boolean_t                            is_run = _gf_false;          glusterd_volinfo_t                      *volinfo = NULL;          char                                    msg[2048] = {0}; +        xlator_t                                *this = NULL; +        this = THIS; +        GF_ASSERT (this);          ret = glusterd_op_stop_volume_args_get (dict, &volname, &flags);          if (ret) @@ -945,18 +954,18 @@ glusterd_op_stage_stop_volume (dict_t *dict, char **op_errstr)          exists = glusterd_check_volume_exists (volname);          if (!exists) { -                snprintf (msg, sizeof (msg), "Volume %s does not exist", volname); -                gf_log ("", GF_LOG_ERROR, "%s", msg); -                *op_errstr = gf_strdup (msg); +                snprintf (msg, sizeof (msg), FMTSTR_CHECK_VOL_EXISTS, volname); +                gf_log (this->name, GF_LOG_ERROR, "%s", msg);                  ret = -1;                  goto out; -        } else { -                ret = 0;          }          ret  = glusterd_volinfo_find (volname, &volinfo); -        if (ret) +        if (ret) { +                snprintf (msg, sizeof (msg), FMTSTR_CHECK_VOL_EXISTS, volname); +                gf_log (this->name, GF_LOG_ERROR, "%s", msg);                  goto out; +        }          ret = glusterd_validate_volume_id (dict, volinfo);          if (ret) @@ -969,25 +978,22 @@ glusterd_op_stage_stop_volume (dict_t *dict, char **op_errstr)          if (_gf_false == glusterd_is_volume_started (volinfo)) {                  snprintf (msg, sizeof(msg), "Volume %s "                            "is not in the started state", volname); -                gf_log ("", GF_LOG_ERROR, "Volume %s " -                        "has not been started", volname); -                *op_errstr = gf_strdup (msg); +                gf_log (this->name, GF_LOG_ERROR, "%s", msg);                  ret = -1;                  goto out;          }          ret = glusterd_check_gsync_running (volinfo, &is_run);          if (ret && (is_run == _gf_false)) -                gf_log ("", GF_LOG_WARNING, "Unable to get the status" +                gf_log (this->name, GF_LOG_WARNING, "Unable to get the status"                          " of active "GEOREP" session");          if (is_run) { -                gf_log ("", GF_LOG_WARNING, GEOREP" sessions active" +                gf_log (this->name, GF_LOG_WARNING, GEOREP" sessions active"                          "for the volume %s ", volname);                  snprintf (msg, sizeof(msg), GEOREP" sessions are active "                            "for the volume '%s'.\nUse 'volume "GEOREP" "                            "status' command for more info. Use 'force' "                            "option to ignore and stop the volume.",                            volname); -                *op_errstr = gf_strdup (msg);                  ret = -1;                  goto out;          } @@ -996,8 +1002,8 @@ glusterd_op_stage_stop_volume (dict_t *dict, char **op_errstr)                  snprintf (msg, sizeof (msg), "Replace brick is in progress on "                            "volume %s. Please retry after replace-brick "                            "operation is committed or aborted", volname); -                gf_log (THIS->name, GF_LOG_ERROR, "%s", msg); -                *op_errstr = gf_strdup (msg); +                gf_log (this->name, GF_LOG_WARNING, "replace-brick in progress " +                        "on volume %s", volname);                  ret = -1;                  goto out;          } @@ -1005,23 +1011,22 @@ glusterd_op_stage_stop_volume (dict_t *dict, char **op_errstr)          if (glusterd_is_defrag_on (volinfo)) {                  snprintf (msg, sizeof(msg), "rebalance session is "                            "in progress for the volume '%s'", volname); -                gf_log (THIS->name, GF_LOG_WARNING, "%s", msg); -                *op_errstr = gf_strdup (msg); +                gf_log (this->name, GF_LOG_WARNING, "%s", msg);                  ret = -1;                  goto out;          }          if (volinfo->rep_brick.rb_status != GF_RB_STATUS_NONE) {                  snprintf (msg, sizeof(msg), "replace-brick session is "                            "in progress for the volume '%s'", volname); -                gf_log (THIS->name, GF_LOG_WARNING, "%s", msg); -                *op_errstr = gf_strdup (msg); +                gf_log (this->name, GF_LOG_WARNING, "%s", msg);                  ret = -1;                  goto out;          }  out: - -        gf_log ("", GF_LOG_DEBUG, "Returning %d", ret); +        if (msg[0] != 0) +                *op_errstr = gf_strdup (msg); +        gf_log (this->name, GF_LOG_DEBUG, "Returning %d", ret);          return ret;  } @@ -1666,15 +1671,21 @@ glusterd_op_stop_volume (dict_t *dict)          char                                    *volname = NULL;          glusterd_volinfo_t                      *volinfo = NULL;          glusterd_brickinfo_t                    *brickinfo = NULL; +        xlator_t                                *this = NULL; + +        this = THIS; +        GF_ASSERT (this);          ret = glusterd_op_stop_volume_args_get (dict, &volname, &flags);          if (ret)                  goto out;          ret  = glusterd_volinfo_find (volname, &volinfo); - -        if (ret) +        if (ret) { +                gf_log (this->name, GF_LOG_ERROR, FMTSTR_CHECK_VOL_EXISTS, +                        volname);                  goto out; +        }          list_for_each_entry (brickinfo, &volinfo->bricks, brick_list) {                  ret = glusterd_brick_stop (volinfo, brickinfo, _gf_false);  | 
