< prev index next >

test/hotspot/jtreg/runtime/SharedArchiveFile/MaxMetaspaceSize.java

Print this page

        

*** 29,44 **** * @library /test/lib * @modules java.base/jdk.internal.misc * java.management */ import jdk.test.lib.cds.CDSTestUtils; import jdk.test.lib.process.ProcessTools; public class MaxMetaspaceSize { public static void main(String[] args) throws Exception { String msg = "OutOfMemoryError: Metaspace"; ! ProcessBuilder pb = ProcessTools.createJavaProcessBuilder( ! "-XX:MaxMetaspaceSize=1m", "-Xshare:dump"); CDSTestUtils.executeAndLog(pb, "dump").shouldContain(msg).shouldHaveExitValue(1); } } --- 29,54 ---- * @library /test/lib * @modules java.base/jdk.internal.misc * java.management */ + import java.util.ArrayList; + import jdk.test.lib.cds.CDSTestUtils; import jdk.test.lib.process.ProcessTools; public class MaxMetaspaceSize { public static void main(String[] args) throws Exception { + ArrayList<String> processArgs = new ArrayList<>(); + processArgs.add("-Xshare:dump"); + processArgs.add("-XX:MaxMetaspaceSize=3m"); + + if (System.getProperty("os.arch").contains("64")) { + processArgs.add("-XX:CompressedClassSpaceSize=1m"); + processArgs.add("-XX:InitialBootClassLoaderMetaspaceSize=1m"); + } + String msg = "OutOfMemoryError: Metaspace"; ! ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(processArgs.toArray(new String[0])); CDSTestUtils.executeAndLog(pb, "dump").shouldContain(msg).shouldHaveExitValue(1); } }
< prev index next >