alibaba / canal

阿里巴巴 MySQL binlog 增量订阅&消费组件
Apache License 2.0
28.53k stars 7.62k forks source link

Canal adaper运行一段时间JVM一直报Cannot allocate memory错误 #1324

Open flackyang opened 5 years ago

flackyang commented 5 years ago

environment

Issue Description

使用Canal Adapter RDB 从RocketMQ接收消息写入数据库,运行一段时间后程序退出,错误信息如下: Java HotSpot(TM) 64-Bit Server VM warning: Attempt to protect stack guard pages failed. Java HotSpot(TM) 64-Bit Server VM warning: Attempt to deallocate stack guard pages failed. Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00007efd17acf000, 12288, 0) failed; error='Cannot allocate memory' (errno=12) #

There is insufficient memory for the Java Runtime Environment to continue.

Native memory allocation (mmap) failed to map 12288 bytes for committing reserved memory.

An error report file with more information is saved as:

/data/datasync/canal_sync/bin/hs_err_pid499531.log

服务器内存是足够的,不是由于服务器物理内存不够导致的 调整bin/startup.sh中jvm参数没有效果

Steps to reproduce

Expected behaviour

Actual behaviour

jianghaibolxy commented 5 years ago

这个找到原因了吗

agapple commented 5 years ago

jdk是什么版本?

flackyang commented 5 years ago

JDK 1.8.0_191

jzb1006 commented 5 years ago

我的一运行就报这个错误,请问是什么情况呢?