8147940: Test gc/g1/TestG1TraceEagerReclaimHumongousObjects.java fails
Reviewed-by: mgerdin, jwilhelm
This commit is contained in:
parent
f089e2ceeb
commit
afc61182cc
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -38,34 +38,6 @@ import java.util.LinkedList;
|
|||||||
|
|
||||||
public class TestG1TraceEagerReclaimHumongousObjects {
|
public class TestG1TraceEagerReclaimHumongousObjects {
|
||||||
public static void main(String[] args) throws Exception {
|
public static void main(String[] args) throws Exception {
|
||||||
testGCLogs();
|
|
||||||
testHumongousObjectGCLogs();
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void testGCLogs() throws Exception {
|
|
||||||
|
|
||||||
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC",
|
|
||||||
"-Xms128M",
|
|
||||||
"-Xmx128M",
|
|
||||||
"-Xmn16M",
|
|
||||||
"-XX:G1HeapRegionSize=1M",
|
|
||||||
"-Xlog:gc+phases=trace",
|
|
||||||
"-XX:+UnlockExperimentalVMOptions",
|
|
||||||
GCTest.class.getName());
|
|
||||||
|
|
||||||
OutputAnalyzer output = new OutputAnalyzer(pb.start());
|
|
||||||
|
|
||||||
// As G1EagerReclaimHumongousObjects is set(default), below logs should be displayed.
|
|
||||||
// And GCTest doesn't have humongous objects, so values should be zero.
|
|
||||||
output.shouldContain("Humongous Reclaim");
|
|
||||||
output.shouldContain("Humongous Total: 0");
|
|
||||||
output.shouldContain("Humongous Candidate: 0");
|
|
||||||
output.shouldContain("Humongous Reclaimed: 0");
|
|
||||||
|
|
||||||
output.shouldHaveExitValue(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void testHumongousObjectGCLogs() throws Exception {
|
|
||||||
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC",
|
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+UseG1GC",
|
||||||
"-Xms128M",
|
"-Xms128M",
|
||||||
"-Xmx128M",
|
"-Xmx128M",
|
||||||
@ -90,19 +62,6 @@ public class TestG1TraceEagerReclaimHumongousObjects {
|
|||||||
output.shouldHaveExitValue(0);
|
output.shouldHaveExitValue(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static class GCTest {
|
|
||||||
private static byte[] garbage;
|
|
||||||
|
|
||||||
public static void main(String [] args) {
|
|
||||||
System.out.println("Creating garbage");
|
|
||||||
// create 128MB of garbage. This should result in at least one GC
|
|
||||||
for (int i = 0; i < 1024; i++) {
|
|
||||||
garbage = new byte[128 * 1024];
|
|
||||||
}
|
|
||||||
System.out.println("Done");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static class GCWithHumongousObjectTest {
|
static class GCWithHumongousObjectTest {
|
||||||
|
|
||||||
public static final int M = 1024*1024;
|
public static final int M = 1024*1024;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user