ocp中升级集群版本。一直报集群中存在正在合并中的 tablet, 请稍后再升级

【 使用环境 】生产环境
【 OB or 其他组件 】ocp 、observer
【 使用版本 】ob:4.3.5.6 ocp:4.4.1-20260226114931
【问题描述】

已经在sys租户下执行,仍然无效:
ALTER SYSTEM SUSPEND MERGE TENANT = all_user;
ALTER SYSTEM _enable_adaptive_compaction = false TENANT all;

查询下列sql仍然会有记录
SELECT ESTIMATED_FINISH_TIME,* FROM oceanbase.V$OB_TABLET_COMPACTION_PROGRESS

2 个赞

@论坛小助手

1 个赞

根据您提供的信息,OceanBase集群在升级过程中遇到了正在合并中的tablet的问题。尽管已经在sys租户下执行了暂停合并和关闭自适应合并的操作,但查询V$OB_TABLET_COMPACTION_PROGRESS视图时仍然存在记录。这表明有某些tablet的合并过程尚未完成。\n针对这种情况,请尝试等待一段时间让当前正在进行的合并自然完成;如果长时间未完成或者遇到其他问题,则可能需要进一步检查这些tablet的具体状态以及相关日志,来确定是否有异常情况发生阻止了它们的正常完成。同时,可以考虑联系OceanBase官方支持以获取更专业的帮助。

详情请参考:

  1. 4000 ~ 4499
  2. GV$OB_TABLET_COMPACTION_PROGRESS
2 个赞

@论坛小助手 并不是有合并卡住,而是有源源不断的新的合并出现

1 个赞

根据您的描述,暂停了所有租户的合并操作后,系统中仍然不断有新的合并任务出现。这种情况可能表明存在某些持续触发合并的行为或配置设置不当的问题。以下是基于提供的文档信息及OceanBase常见处理方法的一些建议:

  1. 检查当前合并状态

    • 通过视图DBA_OB_ZONE_MAJOR_COMPACTION来查看具体的合并状态。该视图提供了关于正在进行中的合并任务的信息。
      SELECT * FROM DBA_OB_ZONE_MAJOR_COMPACTION;
      
    • 如果发现某些分区始终处于COMPACTING状态或者短时间内反复进入此状态,这可能是问题所在。
  2. 确认是否有频繁的数据修改活动

    • 合并的一个主要触发原因是数据的大量修改(如大量的插入、更新或删除)。如果有业务在持续地对数据库进行大量更改,可能会导致系统不断地调度合并任务以保持数据的高效存储。
    • 检查最近的操作日志或使用监控工具观察是否有异常的DML操作频率增加。
  3. 检查自适应合并配置

    • 尽管您已尝试关闭了自适应合并(_enable_adaptive_compaction),但请确保该设置确实已经生效且没有其他地方重新开启了它。
    • 可以通过查询参数值来确认:
      SHOW VARIABLES LIKE '%adaptive_compaction%';
      
  4. 手动控制合并

    • 在合并任务被暂停期间,您可以尝试发起一次全量的手动合并,看是否可以解决当前持续生成新合并任务的问题。
    • 注意事项:当合并任务被暂停时,只能发起租户级别的合并,而不能直接指定到分区级别。
      ALTER SYSTEM START MAJOR FREEZE TENANT = all_user;
      
  5. 进一步诊断与支持

    • 如果上述措施仍未能解决问题,建议检查相关错误日志文件以及系统性能指标,寻找更多线索。
    • 联系OceanBase技术支持团队提供详细的日志文件和操作步骤记录,以便他们能够更准确地定位问题原因并提供解决方案。

希望以上信息能帮助您解决问题。如果还有其他疑问或需要进一步的帮助,请随时告诉我!

检索到的文档如下:

  1. 合并管理概述
  2. 4000 ~ 4499
  3. 查看合并信息
  4. 手动触发合并
  5. 手动控制合并
  6. 转储和合并
  7. 合并
  8. Merge Join
1 个赞

论坛小助手回答的真详细。

论坛小助手很厉害啊,回答完美

果然厉害