oceanbase blockfile突然剧增到几百G

版本4.3.5.1,blockfile三个节点都剧增到几百G,我初步排查可能跟合并卡住有关系


现在应该怎么排查和处理

3 个赞

实际数据大小只有几个G

5 个赞


看下了最近的日志,提示磁盘hung住了?

5 个赞

磁盘hung住了。合并卡住

6 个赞

请问下这个应该怎么修复呢

6 个赞

磁盘问题 需要重启机器试试吧

5 个赞

sys登录 select * from oceanbase.__all_virtual_disk_stat; 看下磁盘状态和使用量。

5 个赞

有个observer进程杀不掉,占着2881端口,把机器重启了,obd cluster start的时候报错了[ERROR] Failed to grant privileges to user proxyro。这个是什么原因,以前重启没有这个错

3 个赞

obd的日志麻烦提供一份

4 个赞

再起了下尽然起来了,尴尬…那请问下现在我查询了下合并结束了,select total_size/1024/1024,used_size/1024/1024,free_size/1024/1024 from oceanbase.__all_virtual_disk_stat;
image
老师现在block_file能释放空间吗,还是只能重建集群了?

3 个赞

obd集群配置的磁盘参数是多少。麻烦提供一份yaml文件看看

2 个赞

image

1 个赞

应该还有个datafile_size参数,应该是已经被预占用了不能缩小了
该配置项设置后,再次修改时不支持缩小,只支持扩大

2 个赞

datafile_size参数是38G,我想问下,合并失败的话,为啥会把block_file撑大

1 个赞

感觉实际问题应该是磁盘hung住导致合并异常。正常合并也存在磁盘波动

2 个赞

额,那就是只能重建集群了?

1 个赞

学习了

1 个赞

学习一下

1 个赞

磁盘hung住一般有2个可能;
1)磁盘性能不够,IO被打满,这个可以看下是否有监控可以确认;
2)磁盘可能有硬件故障,ob多次巡查到了磁盘读写异常,把磁盘置为坏盘,为防止坏盘继续读写,ob会强制把磁盘占满,这个时候确实无法继续合并。

但之前重启服务器后才查看的 __all_virtual_disk_stat 信息(is_disk_valid字段为0 表示坏盘),无法确认是否是重置为坏盘导致。

建议检查下系统的messages日志,确认下是否有磁盘异常相关信息,如果存在,建议更换磁盘,如果没有报异常,后续可以继续使用观察。

3 个赞

这是clog事务文件撑大的吗