You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Motivation:
Starting java7, the UseCompressedOops is dynamically controed by heap
size.
```
$ java -Xmx32g -XX:+PrintFlagsFinal 2>/dev/null | grep UseCompressedOops
bool UseCompressedOops = false {product lp64_product} {default}
$ java -Xmx28g -XX:+PrintFlagsFinal 2>/dev/null | grep UseCompressedOops
bool UseCompressedOops = true {product lp64_product} {ergonomic}
```
The mismatch between UseCompressedOops endup with error:
```
OpenJDK 64-Bit Server VM warning: Max heap size too large for Compressed Oops
***** WARNING! INCORRECT SYSTEM CONFIGURATION DETECTED! *****
The system limit on number of memory mappings per process might be too low for the given
[gc] max Java heap size (40960M). Please adjust /proc/sys/vm/max_map_count to allow for at
[gc] least 73728 mappings (current limit is 65530). Continuing execution with the current
```
Modification:
drop UseCompressedOops JVM option from defaults.
Result:
correct behavior on JVMs with large heap
Acked-by: Lea Morschel
Target: master
Require-book: no
Require-notes: yes
0 commit comments