FULL PRODUCT VERSION :
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows [Version 6.1.7601]
A DESCRIPTION OF THE PROBLEM :
The current JNLP 8 spec lists the set of java-vm-args supported. This list does not include vm args necessary to enable the new String deduplication feature in Java 8u20. The missing args are:
-XX:+UseG1GC
-XX:+UseStringDeduplication
-XX:StringDeduplicationAgeThreshold
-XX:+PrintStringDeduplicationStatistics
Please add support for setting these values from the JNLP file.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Set these vm args in the jnlp file and note that when the JVM run's it's not doing String deduplication
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
String deduplication would be enabled.
ACTUAL -
We're running into out of memory errors because of the number of strings in our system and the new String deduplication feature is just what we're looking for.
REPRODUCIBILITY :
This bug can be reproduced always.
CUSTOMER SUBMITTED WORKAROUND :
Oracle could provide an alternate way to enable String deduplication other than command line options to the VM. Then we would not need to use the java-vm-args attribute.