patch 4.0

This commit is contained in:
wangzelin.wzl
2022-10-24 10:34:53 +08:00
parent 4ad6e00ec3
commit 93a1074b0c
10533 changed files with 2588271 additions and 2299373 deletions

View File

@ -18,51 +18,82 @@ using namespace oceanbase::common;
using namespace oceanbase::share;
// full replica
const char* ObLocalityParser::FULL_REPLICA_STR = "FULL";
const char* ObLocalityParser::F_REPLICA_STR = "F";
const char *ObLocalityParser::FULL_REPLICA_STR = "FULL";
const char *ObLocalityParser::F_REPLICA_STR = "F";
// logonly replica
const char* ObLocalityParser::LOGONLY_REPLICA_STR = "LOGONLY";
const char* ObLocalityParser::L_REPLICA_STR = "L";
const char *ObLocalityParser::LOGONLY_REPLICA_STR = "LOGONLY";
const char *ObLocalityParser::L_REPLICA_STR = "L";
// backup replica
const char* ObLocalityParser::BACKUP_REPLICA_STR = "BACKUP";
const char* ObLocalityParser::B_REPLICA_STR = "B";
const char *ObLocalityParser::BACKUP_REPLICA_STR = "BACKUP";
const char *ObLocalityParser::B_REPLICA_STR = "B";
// readonly replica
const char* ObLocalityParser::READONLY_REPLICA_STR = "READONLY";
const char* ObLocalityParser::R_REPLICA_STR = "R";
const char *ObLocalityParser::READONLY_REPLICA_STR = "READONLY";
const char *ObLocalityParser::R_REPLICA_STR = "R";
// memonly replica
const char* ObLocalityParser::MEMONLY_REPLICA_STR = "MEMONLY";
const char* ObLocalityParser::M_REPLICA_STR = "M";
const char *ObLocalityParser::MEMONLY_REPLICA_STR = "MEMONLY";
const char *ObLocalityParser::M_REPLICA_STR = "M";
// encryption logonly replica
const char *ObLocalityParser::ENCRYPTION_LOGONLY_REPLICA_STR = "ENCRYPTION_LOGONLY";
const char *ObLocalityParser::E_REPLICA_STR = "E";
int ObLocalityParser::parse_type(const char* str, int64_t len, ObReplicaType& replica_type)
int ObLocalityParser::parse_type(const char *str, int64_t len, ObReplicaType &replica_type)
{
UNUSED(len);
// TODO: only support F-replica in 4.0 for now, will support others in the future
int ret = OB_SUCCESS;
if (OB_ISNULL(str)) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid replica type string. null!", K(ret));
LOG_USER_ERROR(OB_INVALID_ARGUMENT, "replica_type, replica_type should not be null");
} else if (0 == STRCASECMP(FULL_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_FULL;
} else if (0 == STRCASECMP(F_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_FULL;
} else if (0 == STRCASECMP(LOGONLY_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_LOGONLY;
} else if (0 == STRCASECMP(L_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "logonly-replica");
} else if ( 0 == STRCASECMP(L_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_LOGONLY;
} else if (0 == STRCASECMP(BACKUP_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "logonly-replica");
} else if (0 == STRCASECMP(ENCRYPTION_LOGONLY_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_ENCRYPTION_LOGONLY;
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "encryption-logonly-replica");
} else if ( 0 == STRCASECMP(E_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_ENCRYPTION_LOGONLY;
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "encryption-logonly-replica");
} else if ( 0 == STRCASECMP(BACKUP_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_BACKUP;
} else if (0 == STRCASECMP(B_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "backup-replica");
} else if ( 0 == STRCASECMP(B_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_BACKUP;
} else if (0 == STRCASECMP(READONLY_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "backup-replica");
} else if ( 0 == STRCASECMP(READONLY_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_READONLY;
} else if (0 == STRCASECMP(R_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "readonly-replica");
} else if ( 0 == STRCASECMP(R_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_READONLY;
} else if (0 == STRCASECMP(MEMONLY_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "readonly-replica");
} else if ( 0 == STRCASECMP(MEMONLY_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_MEMONLY;
} else if (0 == STRCASECMP(M_REPLICA_STR, str)) {
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "memonly-replica");
} else if ( 0 == STRCASECMP(M_REPLICA_STR, str)) {
replica_type = REPLICA_TYPE_MEMONLY;
ret = OB_NOT_SUPPORTED;
LOG_USER_ERROR(OB_NOT_SUPPORTED, "memonly-replica");
} else {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid replica type string", K(str), K(ret));
LOG_USER_ERROR(OB_INVALID_ARGUMENT, "replica_type, unrecognized replica_type");
}
return ret;
}