[FEAT MERGE] 开源裁减颗粒度优化

Co-authored-by: nroskill <nroskill@gmail.com>
Co-authored-by: akaError <lzg020616@163.com>
Co-authored-by: yinyj17 <yinyijun92@gmail.com>
This commit is contained in:
wenxingsen
2023-08-15 02:40:25 +00:00
committed by ob-robot
parent a31e422133
commit 9b31f8aa03
378 changed files with 26718 additions and 2379 deletions

View File

@ -786,3 +786,41 @@ DEF_COMMAND(TRANS, update_lock, 1, "tenant_id ls_id obj_type obj_id lock_mode ow
COMMON_LOG(INFO, "update_lock", K(arg));
return ret;
}
#ifdef OB_BUILD_ARBITRATION
// force_clear_arb_cluster_info
// @params [in] cluster_id, which cluster to modify
// @params [in] svr_ip, the arbitration server IP
// @params [in] svr_port, the arbitration server IP
// ATTENTION:
// Please make sure let log stream's leader to execute this command
// For permanant offline, orig_paxos_number should equals to new_paxos_number
DEF_COMMAND(TRANS, force_clear_arb_cluster_info, 1, "cluster_id # force_clear_arb_cluster_info")
{
int ret = OB_SUCCESS;
string arg_str;
int64_t cluster_id_to_clean = OB_INVALID_TENANT_ID;
if (cmd_ == action_name_) {
ret = OB_INVALID_ARGUMENT;
ADMIN_WARN("should provide cluster_id arb_svr_ip arb_svr_port");
} else {
arg_str = cmd_.substr(action_name_.length() + 1);
}
if (OB_FAIL(ret)) {
} else if (1 != sscanf(arg_str.c_str(), "%ld", &cluster_id_to_clean)) {
ret = OB_INVALID_ARGUMENT;
COMMON_LOG(WARN, "invalid arg", K(ret), K(arg_str.c_str()), K(cmd_.c_str()), K(cluster_id_to_clean));
} else if (false == is_valid_cluster_id(cluster_id_to_clean)) {
COMMON_LOG(WARN, "invalid cluster_id", K(ret), K(cluster_id_to_clean));
} else {
ObForceClearArbClusterInfoArg arg(cluster_id_to_clean);
if (OB_FAIL(client_->force_clear_arb_cluster_info(arg))) {
COMMON_LOG(ERROR, "send req fail", K(ret));
}
}
COMMON_LOG(INFO, "force_clear_arb_cluster_info", K(cluster_id_to_clean));
return ret;
}
#endif