[FEAT MERGE] change the semantics of tenant=all

This commit is contained in:
obdev
2023-08-31 03:10:42 +00:00
committed by ob-robot
parent 6f95b8a7ab
commit 03b37d3730
36 changed files with 1042 additions and 346 deletions

View File

@ -2697,9 +2697,15 @@ int ObRootService::create_tenant(const ObCreateTenantArg &arg, UInt64 &tenant_id
LOG_INFO("receive create tenant arg", K(arg), "timeout_ts", THIS_WORKER.get_timeout_ts());
int ret = OB_SUCCESS;
int tmp_ret = OB_SUCCESS;
const ObString &tenant_name = arg.tenant_schema_.get_tenant_name_str();
if (!inited_) {
ret = OB_NOT_INIT;
LOG_WARN("not init", KR(ret));
} else if (OB_FAIL(ObResolverUtils::check_not_supported_tenant_name(tenant_name))) {
LOG_WARN("since 4.2.1, naming a tenant as all/all_user/all_meta is not supported",
KR(ret), K(tenant_name));
LOG_USER_ERROR(OB_NOT_SUPPORTED,
"since 4.2.1, naming a tenant as all/all_user/all_meta is");
} else if (OB_FAIL(ddl_service_.create_tenant(arg, tenant_id))) {
LOG_WARN("fail to create tenant", KR(ret), K(arg));
if (OB_TMP_FAIL(submit_reload_unit_manager_task())) {
@ -2774,6 +2780,11 @@ int ObRootService::flashback_tenant(const ObFlashBackTenantArg &arg)
} else if (!arg.is_valid()) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid argument", K(arg), K(ret));
} else if (OB_FAIL(ObResolverUtils::check_not_supported_tenant_name(arg.new_tenant_name_))) {
LOG_WARN("since 4.2.1, renaming a tenant to all/all_user/all_meta is not supported",
KR(ret), "new_tenant_name", arg.new_tenant_name_);
LOG_USER_ERROR(OB_NOT_SUPPORTED,
"since 4.2.1, renaming a tenant to all/all_user/all_meta is");
} else if (OB_FAIL(ddl_service_.flashback_tenant(arg))) {
LOG_WARN("failed to flash back tenant", K(ret));
}
@ -2807,6 +2818,11 @@ int ObRootService::modify_tenant(const ObModifyTenantArg &arg)
} else if (!arg.is_valid()) {
ret = OB_INVALID_ARGUMENT;
LOG_WARN("invalid arg", K(arg), K(ret));
} else if (OB_FAIL(ObResolverUtils::check_not_supported_tenant_name(arg.new_tenant_name_))) {
LOG_WARN("since 4.2.1, renaming a tenant to all/all_user/all_meta is not supported",
KR(ret), "new_tenant_name", arg.new_tenant_name_);
LOG_USER_ERROR(OB_NOT_SUPPORTED,
"since 4.2.1, renaming a tenant to all/all_user/all_meta is");
} else if (OB_FAIL(ddl_service_.modify_tenant(arg))) {
LOG_WARN("ddl service modify tenant failed", K(arg), K(ret));
} else {
@ -8373,6 +8389,11 @@ int ObRootService::physical_restore_tenant(const obrpc::ObPhysicalRestoreTenantA
ret = OB_OP_NOT_ALLOW;
LOG_WARN("restore tenant when restore_concurrency is 0 not allowed", KR(ret));
LOG_USER_ERROR(OB_OP_NOT_ALLOW, "restore tenant when restore_concurrency is 0");
} else if (OB_FAIL(ObResolverUtils::check_not_supported_tenant_name(arg.tenant_name_))) {
LOG_WARN("since 4.2.1, naming a tenant as all/all_user/all_meta is not supported",
KR(ret), "tenant_name", arg.tenant_name_);
LOG_USER_ERROR(OB_NOT_SUPPORTED,
"since 4.2.1, naming a tenant as all/all_user/all_meta is");
} else if (OB_FAIL(ddl_service_.get_tenant_schema_guard_with_version_in_inner_table(
OB_SYS_TENANT_ID, schema_guard))) {
LOG_WARN("fail to get sys tenant's schema guard", KR(ret));