问题现象
OceanBase 数据库单节点集群 clog 盘满达到 95%,无冻结转储异常。
df -h
Filesystem Type Size Used Avail Use% Mounted on
overlay overlay 458G 251G 184G 58% /
tmpfs tmpfs 64M 0 64M 0% /dev
tmpfs tmpfs 252G 0 252G 0% /sys/fs/cgroup
/dev/dfa1 ext4 916G 824G 46G 95% /data/log1
/dev/dfa2 ext4 1.8T 1.3T 466G 74% /data/1
/dev/dfa3 ext4 458G 251G 184G 58% /etc/hosts
shm tmpfs 64M 0 64M 0% /dev/shm
/dev/sda5 ext4 259G 137G 109G 56% /home/admin/oceanbase
tmpfs tmpfs 252G 0 252G 0% /proc/acpi
tmpfs tmpfs 252G 0 252G 0% /proc/scsi
tmpfs tmpfs 252G 0 252G 0% /sys/firmware
日志伴随出现如下异常信息。
[2025-02-27 16:12:20.876141] ERROR [CLOG] read_from_io (ob_log_direct_reader.cpp:742) [7310][912][Y0-0000000000000000] [lt=38] [dc=0] Fail to read log from disk, (ret=-4016, want_file_id=9999, count=4096, offset=67104768) BACKTRACE:0xd83dfd7 0x3567132 0x79a4490 0x79a4dba 0x7daf641 0x7dc28a5 0x7dc688b 0x7dc6c6d 0x7dc7185 0x7f082e2 0x7f0858e 0x7d4dcc1 0x7d4e61c 0x7c36205 0x7c32d84 0x351f7b3 0x3c84d19 0x3c8697b 0xd5ea447 0xd5e7a60 0xd5e581f
[2025-02-27 16:12:21.910633] ERROR [CLOG] read_disk (ob_log_direct_reader.cpp:755) [7310][912][Y0-0000000000000000] [lt=15] [dc=0] read not enough(ret=-4016, fd={flag:1, disk_mgr:0x12e6de00, file_id:9999, is_inited:true, fd_cnt:1}, offset=67104768, read_count=0, count=4096) BACKTRACE:0xd83dfd7 0x3567132 0x7dbeb65 0x7dc2004 0x7dc222c 0x7dc24cb 0x7dc2583 0x7dc688b 0x7dc6c6d 0x7dc7185 0x7f082e2 0x7f0858e 0x7d4dcc1 0x7d4e61c 0x7c36205 0x7c32d84 0x351f7b3 0x3c84d19 0x3c8697b 0xd5ea447 0xd5e7a60 0xd5e581f
问题原因
因非预期的原因导致了 clog 文件不连续,导致 clog 无法正常的读取和回收,相关日志会显示异常的 clog 文件 id:file_id:9999。
问题的风险及影响
clog 盘满,集群异常。
影响租户
影响 OceanBase 数据库中的 SYS 租户和 Oracle 租户以及 MySQL 租户。
适用版本
OceanBase 数据库 V2.x、V3.x 版本。
解决方法
联系 OceanBase 数据库技术支持团队获得相应的协助。
规避方式
避免人为移动 OceanBase 数据库的 clog 文件。