diff --git a/src/observer/omt/ob_th_worker.cpp b/src/observer/omt/ob_th_worker.cpp index 7fe872b76..906a30837 100644 --- a/src/observer/omt/ob_th_worker.cpp +++ b/src/observer/omt/ob_th_worker.cpp @@ -430,6 +430,7 @@ void ObThWorker::run(int64_t idx) int64_t tenant_id = -1; int64_t req_recv_timestamp = -1; int32_t worker_level = -1; + SET_GROUP_ID(get_group_id()); this->worker(tenant_id, req_recv_timestamp, worker_level); } diff --git a/src/share/rc/ob_tenant_base.cpp b/src/share/rc/ob_tenant_base.cpp index ec9aec9e0..0ce2e8e06 100644 --- a/src/share/rc/ob_tenant_base.cpp +++ b/src/share/rc/ob_tenant_base.cpp @@ -313,8 +313,9 @@ int ObTenantBase::pre_run() ObTenantEnv::set_tenant(this); // register in tenant cgroup without modifying group_id ObCgroupCtrl *cgroup_ctrl = get_cgroup(); - if (OB_NOT_NULL(cgroup_ctrl)) { - ret = cgroup_ctrl->add_self_to_cgroup_(id_, GET_GROUP_ID()); + if (OB_NOT_NULL(cgroup_ctrl) && cgroup_ctrl->is_valid()) { + // add thread to tenant OBCG_DEFAULT cgroup + ret = cgroup_ctrl->add_self_to_cgroup_(id_); } { ThreadListNode *node = lib::Thread::current().get_thread_list_node();