集群级配置项 enable_major_freeze 和 租户级配置项 major_freeze_duty_time

【 使用环境 】测试环境
【 OB or 其他组件 】Oceanbase
【 使用版本 】V4.3.5
【问题描述】

关于集群级配置项 enable_major_freeze 和 租户级配置项 major_freeze_duty_time

ALTER SYSTEM SET enable_major_freeze = ‘False’; 根据文档不会自动全局冻结

是不是说明在 major_freeze_duty_time = ‘02:00’ 时,即使到达 02:00 也不会冻结和合并。

@论坛小助手

根据文档库中的信息,可以对您的问题进行如下解答:

  1. 关于 enable_major_freeze 配置项
    根据文档内容,enable_major_freeze 是一个集群级配置项,用于控制是否开启自动全局冻结的功能。默认值为 True,表示开启自动全局冻结功能。如果将其设置为 False,则不会自动触发全局冻结。相关操作如下:

    ALTER SYSTEM SET enable_major_freeze = 'False';
    

    依据的文档名称及段落标题为:enable_major_freeze - V4.3.5 - OceanBase 数据库文档 - 分布式数据库使用文档

  2. 关于 major_freeze_duty_time 配置项
    根据文档片段(major_freeze_duty_time -> 功能描述),major_freeze_duty_time 是一个租户级配置项,用于设置每日定时冻结和合并的触发时刻。例如,当设置为 '02:00' 时,表示每天凌晨 2 点会触发冻结和合并操作。

  3. 两者的交互关系
    如果您将 enable_major_freeze 设置为 'False',即使 major_freeze_duty_time 设置为 '02:00',到达指定时间后也不会触发冻结和合并操作。这是因为 enable_major_freeze 是一个更高优先级的开关,控制了整个集群是否允许自动全局冻结。只有当 enable_major_freeze 设置为 'True' 时,major_freeze_duty_time 的定时触发功能才会生效。

结论

在您的场景中,如果执行了以下命令:

ALTER SYSTEM SET enable_major_freeze = 'False';

那么即使 major_freeze_duty_time 设置为 '02:00',到达凌晨 2 点时也不会触发冻结和合并操作。

如果您希望恢复定时冻结和合并功能,请重新启用 enable_major_freeze

ALTER SYSTEM SET enable_major_freeze = 'True';

更多信息请查看:

  1. minor_freeze_times
  2. 手动控制合并
  3. PARAMETER
  4. enable_major_freeze
  5. 定时触发合并
  6. major_freeze_duty_time
  7. 4000 ~ 4499
  8. global_major_freeze_residual_memory
  9. 自动触发合并
1 个赞

false 是确定开启与否, time 到点前触发条件false也不会开启