关键字
KingbaseFlysync ,KFS,同步程序, 内存, OutOfMemoryError,Replicator ran out of memory, restarting Restart JVM
问题描述
同步服务能够正常同步数据,在同步过程中遇到超大事务KFS导致同步异常且日志中出现了如下提示:
2021/05/24 16:07:58.681 | | [mysql - pool-2-thread-1] ERROR management.OpenReplicatorManager Received error notification, shutting down services :
2021/05/24 16:07:58.681 | Stage task failed: stage=q-to-dbms seqno=5778 fragno=0
2021/05/24 16:07:58.681 | java.lang.OutOfMemoryError: Java heap space
2021/05/24 16:07:58.681 | Replicator ran out of memory, restarting Restart JVM (Ignoring, already restarting).

问题分析
KingbaseFlysync(KFS)同步程默认情况下JVM的最大运行内存为2GB,当同步过程中有超大事务或者超大大字段对象时,可能会出现由于内存不足导致JVM异常退出或者重启的问题。
解决方案
1)在同步程序配置文件flysync.ini中添加JVM内存配置参数
[test@localhost ~]$ vim flysync.ini
在配置文件中[defaults]添加如下配置并保存
repl_java_mem_size=xxx (单位是M)

2)在安装包解压路径下执行./fspm update 参数更新命令
[test@localhost ~]$ cd /home/hes/KingbaseFlySync-V002R002C004BXXXXXXXX-replicator/tools
[test@localhost tools]$ ./fspm update
3)更新成功后,再启动同步程序即可
[test@localhost tools]$ replicator start




