ledefe opened a new issue #3277:
URL: https://github.com/apache/rocketmq/issues/3277
OOM is caused by too many consumerManageExecutor task
By looking at the source code, I learned that
consumerManagerThreadPoolQueueCapacity has settings but is not used. As shown
below.....
```java
this.consumerManagerThreadPoolQueue = new
LinkedBlockingQueue<Runnable>(this.brokerConfig.getConsumerManagerThreadPoolQueueCapacity());
....
this.consumerManageExecutor =
Executors.newFixedThreadPool(this.brokerConfig.getConsumerManageThreadPoolNums(),
new ThreadFactoryImpl(
"ConsumerManageThread_"));
````
I want to know why unbounded queues are used .Is there any special design?
By the way, this problem occurs under the aarch64 architecture. There is no
such problem under AMD architecture.
JVM:
```java
-XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:G1ReservePercent=25
-XX:InitiatingHeapOccupancyPercent=30 -XX:SoftRefLRUPolicyMSPerMB=0
-XX:SurvivorRatio=8 -verbose:gc -Xloggc:/dev/shm/mq_gc_%p.log
-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime
-XX:+PrintAdaptiveSizePolicy -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5
-XX:GCLogFileSize=30m -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch
-XX:MaxDirectMemorySize=1073741824 -XX:-UseLargePages -XX:-UseBiasedLocking
-Djava.ext.dirs=/opt/jre/jre/lib/ext:/opt/rocketmq/bin/../lib -Xms2g -Xmx2g
-Xmn1g -Drocketmq.broker.rebalance.lockMaxLiveTime=7000 -cp
.:/opt/rocketmq/bin/../conf: org.apache.rocketmq.broker.BrokerStartup -c
/opt/rocketmq/conf/broker.conf
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]