基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
降级的日志流副本所在的机器正常了但是仍未升级
更新时间:2026-08-21 07:46
问题现象
客户在进行服务器维护,逐一关闭 OBServer 节点,集群恢复后发现日志流处于降级状态且无法自动恢复。尝试重启集群后,问题依旧存在,日志流同步正常且未触发 rebuild 操作。
问题原因
该问题为运维操作触发的 By Design 行为。在服务器维护过程中,用户手动执行了停止 Zone 的操作,导致 RootService 认为该 Zone 内所有机器均处于停止状态。日志流恢复的内部逻辑判断不仅要求节点的 start_service_time > 0,还强依赖 Zone 的当前状态。由于 Zone 处于 inactive 状态,系统判定条件不满足,从而阻止了日志流的自动恢复与升级流程。
关键信息
- 日志分析显示特定节点被系统识别为宕机状态。
- 代码逻辑确认:日志流恢复判断需同时满足
start_service_time > 0与 Zone 状态为活跃。 - 查询 Zone 状态发现其处于
inactive状态。
问题的风险及影响
即使副本所在机器已恢复正常,日志流仍无法自动升级。日志流持续降级可能影响数据高可用保障及读写路由策略。
影响租户
集群内所有租户。
适用版本
OceanBase 数据库 V4.0.0 及以后版本。
解决方法
执行 ALTER SYSTEM START ZONE; 命令激活对应 Zone,系统将重新识别节点状态并触发日志流恢复,升级即可成功。
规避方式
进行服务器维护时,应避免随意手动执行 STOP ZONE 命令。若确需停服维护,应在维护结束后及时执行 ALTER SYSTEM START ZONE 恢复 Zone 状态,确保集群元数据与底层服务状态一致,防止因 Zone 状态不一致触发日志流降级锁定。