首批通过分布式安全可靠测评,为关键业务系统打造
ilog_index_expire_time
更新时间:2026-04-10 11:58:02
说明
由于 V4.x 版本对架构进行了变更升级,该配置项已不再适用,从 V4.0.0 版本开始删除。
ilog_index_expire_time 用于设置 OBServer 可提供的 Ilog 文件读取的时间上限。
| 属性 | 描述 |
|---|---|
| 参数类型 | 时间类型 |
| 默认值 | 60d,表示 60 天 |
| 取值范围 | [0s,120d) |
| 是否重启 OBServer 节点生效 | 否 |
使用说明
在 OceanBase 数据库中,file_id_cache 缓存了所有 Ilog 文件对应的元数据信息,记录了每个分区在这些 Ilog 文件中的起始日志号及时间戳。默认情况下,只有在 Ilog 文件被删除时才会触发对 file_id_cache 的清理。因此,在磁盘空间较大的机器上,很容易出现 file_id_cache 占用较大的内存空间的情况,同时,如果反复出现分区的创建与删除时,该情况还会被进一步放大。
您可以通过调整 ilog_index_expire_time 配置项的值来解决 file_id_cache 占用较大内存空间的问题。ilog_index_expire_time 定义了 OBServer 可提供的 Ilog 文件读取的时间上限,对于超过指定时间上限的 Ilog,将不在 file_id_cache 中进行缓存,从而起到减少内存占用的作用。
在设置该配置项的值时:
如果缩短该配置项值所对应的时间上限,系统会迅速地清理
file_id_cache的内存占用。设置后,您可以通过查询ob_csr_file_id_cache标识对应的内存的占用量进行观测。如果扩大该配置项所对应的时间上限,在机器重启后,系统会让
file_id_cach缓存时间跨度范围更大的 Ilog 文件。
示例
obclient> ALTER SYSTEM SET ilog_index_expire_time = '7d';