27 * @summary Regression test for JDK-8098821 28 * @bug 8098821 29 * @requires vm.cds 30 * @requires vm.gc.G1 31 * @library /test/lib /test/hotspot/jtreg/runtime/appcds 32 * @modules java.base/jdk.internal.misc 33 * @modules java.management 34 * @run main SysDictCrash 35 * @run main/othervm -XX:+UseStringDeduplication SysDictCrash 36 * @run main/othervm -XX:-CompactStrings SysDictCrash 37 */ 38 39 import jdk.test.lib.process.OutputAnalyzer; 40 import jdk.test.lib.process.ProcessTools; 41 42 public class SysDictCrash { 43 public static void main(String[] args) throws Exception { 44 // SharedBaseAddress=0 puts the archive at a very high address on solaris, 45 // which provokes the crash. 46 ProcessBuilder dumpPb = ProcessTools.createJavaProcessBuilder(true, 47 TestCommon.makeCommandLineForAppCDS( 48 "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5", 49 "-cp", ".", 50 "-XX:SharedBaseAddress=0", "-XX:SharedArchiveFile=./SysDictCrash.jsa", 51 "-Xshare:dump", 52 "-showversion", "-Xlog:cds,cds+hashtables")); 53 54 TestCommon.checkDump(TestCommon.executeAndLog(dumpPb, "dump")); 55 56 ProcessBuilder runPb = ProcessTools.createJavaProcessBuilder(true, 57 TestCommon.makeCommandLineForAppCDS( 58 "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5", 59 "-XX:SharedArchiveFile=./SysDictCrash.jsa", 60 "-Xshare:on", 61 "-version")); 62 63 TestCommon.checkExec(TestCommon.executeAndLog(runPb, "exec")); 64 } 65 } | 27 * @summary Regression test for JDK-8098821 28 * @bug 8098821 29 * @requires vm.cds 30 * @requires vm.gc.G1 31 * @library /test/lib /test/hotspot/jtreg/runtime/appcds 32 * @modules java.base/jdk.internal.misc 33 * @modules java.management 34 * @run main SysDictCrash 35 * @run main/othervm -XX:+UseStringDeduplication SysDictCrash 36 * @run main/othervm -XX:-CompactStrings SysDictCrash 37 */ 38 39 import jdk.test.lib.process.OutputAnalyzer; 40 import jdk.test.lib.process.ProcessTools; 41 42 public class SysDictCrash { 43 public static void main(String[] args) throws Exception { 44 // SharedBaseAddress=0 puts the archive at a very high address on solaris, 45 // which provokes the crash. 46 ProcessBuilder dumpPb = ProcessTools.createJavaProcessBuilder(true, 47 "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5", 48 "-cp", ".", 49 "-XX:SharedBaseAddress=0", "-XX:SharedArchiveFile=./SysDictCrash.jsa", 50 "-Xshare:dump", 51 "-showversion", "-Xlog:cds,cds+hashtables"); 52 53 TestCommon.checkDump(TestCommon.executeAndLog(dumpPb, "dump")); 54 55 ProcessBuilder runPb = ProcessTools.createJavaProcessBuilder(true, 56 "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5", 57 "-XX:SharedArchiveFile=./SysDictCrash.jsa", 58 "-Xshare:on", 59 "-version"); 60 61 TestCommon.checkExec(TestCommon.executeAndLog(runPb, "exec")); 62 } 63 } |