< prev index next >

test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SysDictCrash.java

Print this page
rev 59103 : imported patch hotspot


  25 /*
  26  * @test
  27  * @summary Regression test for JDK-8098821
  28  * @bug 8098821
  29  * @requires vm.cds.archived.java.heap
  30  * @library /test/lib /test/hotspot/jtreg/runtime/cds/appcds
  31  * @run driver SysDictCrash
  32  */
  33 
  34 import jdk.test.lib.process.OutputAnalyzer;
  35 import jdk.test.lib.process.ProcessTools;
  36 
  37 public class SysDictCrash {
  38     public static void main(String[] args) throws Exception {
  39         SharedStringsUtils.run(args, SysDictCrash::test);
  40     }
  41 
  42     public static void test(String[] args) throws Exception {
  43         String vmOptionsPrefix[] = SharedStringsUtils.getChildVMOptionsPrefix();
  44 
  45         // SharedBaseAddress=0 puts the archive at a very high address on solaris,
  46         // which provokes the crash.
  47         ProcessBuilder dumpPb = ProcessTools.createJavaProcessBuilder(true,
  48           TestCommon.concat(vmOptionsPrefix,
  49             "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5",
  50             "-cp", ".",
  51             "-XX:SharedBaseAddress=0", "-XX:SharedArchiveFile=./SysDictCrash.jsa",
  52             "-Xshare:dump",
  53             "-showversion", "-Xlog:cds,cds+hashtables"));
  54 
  55         boolean continueTest = true;
  56         OutputAnalyzer output = TestCommon.executeAndLog(dumpPb, "dump");
  57         try {
  58             TestCommon.checkDump(output);
  59         } catch (java.lang.RuntimeException re) {
  60             if (!output.getStdout().contains("UseCompressedOops and UseCompressedClassPointers have been disabled due to")) {
  61                 throw re;
  62             } else {
  63                 System.out.println("Shared archive was not created due to UseCompressedOops and UseCompressedClassPointers have been disabled.");
  64                 continueTest = false;
  65             }
  66         }


  25 /*
  26  * @test
  27  * @summary Regression test for JDK-8098821
  28  * @bug 8098821
  29  * @requires vm.cds.archived.java.heap
  30  * @library /test/lib /test/hotspot/jtreg/runtime/cds/appcds
  31  * @run driver SysDictCrash
  32  */
  33 
  34 import jdk.test.lib.process.OutputAnalyzer;
  35 import jdk.test.lib.process.ProcessTools;
  36 
  37 public class SysDictCrash {
  38     public static void main(String[] args) throws Exception {
  39         SharedStringsUtils.run(args, SysDictCrash::test);
  40     }
  41 
  42     public static void test(String[] args) throws Exception {
  43         String vmOptionsPrefix[] = SharedStringsUtils.getChildVMOptionsPrefix();
  44 
  45         // SharedBaseAddress=0 puts the archive at a very high address, which provokes the crash.

  46         ProcessBuilder dumpPb = ProcessTools.createJavaProcessBuilder(true,
  47           TestCommon.concat(vmOptionsPrefix,
  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         boolean continueTest = true;
  55         OutputAnalyzer output = TestCommon.executeAndLog(dumpPb, "dump");
  56         try {
  57             TestCommon.checkDump(output);
  58         } catch (java.lang.RuntimeException re) {
  59             if (!output.getStdout().contains("UseCompressedOops and UseCompressedClassPointers have been disabled due to")) {
  60                 throw re;
  61             } else {
  62                 System.out.println("Shared archive was not created due to UseCompressedOops and UseCompressedClassPointers have been disabled.");
  63                 continueTest = false;
  64             }
  65         }
< prev index next >