OMS4.2.10版本同步过程失败问题

请问下官方大佬,我的oms4.2.10版本,双向同步,跑一段时间就会出同步故障,报
Caused by: io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 1002438656 byte(s) of direct memory (used: 1040187392, max: 2040135680),目前oms内存为40G
text (2).log (119.9 KB)
,请问下官方大佬,这个怎么解决叻

5 个赞

这不典型的OMM故障吗?内存溢出了

问题之前那就报内存不够,加了一次,又包内存不够。不会又让加内存啥

截图看一下 组件监控 双向同步源端和目标端都是啥


源端是mysql,目标端oceanbase,我从新建了一个同步组件还是,一样分配内存失败了。

1 个赞

运维监控->机器->资源是否足够

进入OMS容器 supervisorctl status 组件是否Runing

查看ghana异常日志 日志目录 /home/admin/logs/ghana/Ghana/common-error.log



好像都正常

下面这个没有日志
/home/admin/logs/ghana/Ghana/common-error.log

日志文件看一下位置是不是找错了?


你点击更新 查看一下MaxDirectMemorySize 配置是多大 看着是direct memory 已接近上限,无法回收导致问题 应该是配置小了

位置没错噢,之前一直是跑着的,昨晚开始不正常的,没看到报位置不对叻。


没看到这个值叻

那就是 你新建链路的时候 增量组件那里选择的内存是多少?

2到4G,现在我算了下2040135680最大2G,是物理内存不够了吗?

这么耗内存,难道有大字段

是的 应该是这里的内存选的太小了 导致的 看一下是否有大字段或者大表的批量DML操作

增量也改到4~8G试试呢

1 个赞

等回复

这个怎么加,没看到有修改的地方叻,我是加了物理机内存,就好了。

看完这篇文章,我对这个话题有了新理解。