【发布时间】:2021-12-28 00:12:37
【问题描述】:
我有 ParNew GC 警告到 system.log 超过 8 秒暂停:
WARN [Service Thread] GCInspector.java:283 - ParNew GC in 8195ms. CMS Old Gen: 22316280488 -> 22578261416; Par Eden Space: 1717787080 -> 0; Par Survivor Space: 123186168 -> 214695936
它似乎出现在特定 table 上发生轻微压缩时:
92128ed0-46fe-11ec-bf5a-0d5dfeeee6e2 ks table 1794583380 1754598812 {1:92467, 2:5291, 3:22510}
f6e3cd30-46fc-11ec-bf5a-0d5dfeeee6e2 ks table 165814525 160901558 {1:3196, 2:24814}
334c63f0-46fc-11ec-bf5a-0d5dfeeee6e2 ks table 126097876 122921938 {1:3036, 2:24599}
桌子:
- 配置了
LCS策略。 - 平均行大小为
1MB - 还有一些宽行,最多
60MB(来自cfhistograms,不知道它是否包括应用于该行的LZ4压缩?)。
heap size 为 32GB。
问题:
一个。在压缩过程中必须有多少行(一次!)放入内存?它只是一个,还是多个?
b.压缩时,每个分区是在decompressed form 中读入内存,还是在compressed form 中?
c。你认为我的压缩过程会填满所有的堆内存吗?
谢谢
完整的 GC 设置:
-Xms32G
-Xmx32G
#-Xmn800M
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+CMSParallelRemarkEnabled
-XX:SurvivorRatio=8
-XX:MaxTenuringThreshold=1
-XX:CMSInitiatingOccupancyFraction=75
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSWaitDuration=10000
-XX:+CMSParallelInitialMarkEnabled
-XX:+CMSEdenChunksRecordAlways
【问题讨论】:
-
你用的是G1吗?
-
不,
CMS/ParNew书面 :) -
我确实看到了“ParNew”,但后来我也看到了 32GB 堆,所以我想澄清一下。 NewGen 大小设置为多少?
-
嗨。我已经更新了我的帖子。
Xmn未设置。你有足够的信息来回答吗?
标签: cassandra datastax datastax-enterprise