< prev index next >
test/hotspot/jtreg/runtime/SharedArchiveFile/MaxMetaspaceSize.java
Print this page
@@ -29,16 +29,26 @@
* @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(
- "-XX:MaxMetaspaceSize=1m", "-Xshare:dump");
+ ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(processArgs.toArray(new String[0]));
CDSTestUtils.executeAndLog(pb, "dump").shouldContain(msg).shouldHaveExitValue(1);
}
}
< prev index next >