【使用环境】生产环境
- OB 版本:OceanBase 4.2.2.1
- OCP 部署:Docker 容器部署
- 集群架构:三副本集群,业务租户
its+ 系统租户sys - 业务影响:数据库内核业务完全正常,仅 OCP 界面展示异常
【问题描述】
- 前期现象:OCP 监控显示
its租户大合并卡住,合并运行时长 48 天,sys租户大合并卡住,合并运行时长 2 天,告警错误-4388 long time major freeze not finish。 - 内核排查结果(sys 租户执行):
- 查询
__all_zone,所有 zone 的merge_status = 0(IDLE);is_merge_error=0,内核无正在运行的合并任务。 - 视图
CDB_OB_MAJOR_COMPACTION无任何 RUNNING 状态合并记录。 - 可以正常执行
alter system major freeze;,新的大合并任务可以正常触发、正常流转完成。 - 经过处理后 rootservice.log 不再输出
-4388错误,内核合并调度完全恢复正常。
- 查询
- 遗留问题:
OCP【合并管理】页面,仍然残留两条僵尸任务,状态显示进行中,分别耗时 48 天和2天。数据库内核实际不存在该任务,这条僵尸记录会干扰查看真实的历史合并记录。
【已经尝试过的操作】 - 执行内核修复 SQL(sys 租户)
ALTER SYSTEM CLEAR MERGE ERROR;
ALTER SYSTEM SUSPEND MERGE;
–等待30s
ALTER SYSTEM RESUME MERGE; - 重启单个 OBServer 节点;
- 完整重启 Docker OCP 容器,等待 5 个采集周期,浏览器 Ctrl+F5 硬刷新页面;
以上操作完成后,OB 内核完全正常,但 OCP 这条僵尸 RUNNING 任务记录依旧保留。
【诉求】
- 请问是否有官方安全方式清理 OCP 元库中这条僵尸合并记录。