8214217: [TESTBUG] runtime/appcds/LotsOfClasses.java failed with fragmented heap
Improve the fragmentation error message. Set java heap size in LotsOfClasses.java. Reviewed-by: iklam, ccheung
This commit is contained in:
parent
803b9a675b
commit
bc215804a4
@ -683,7 +683,10 @@ size_t FileMapInfo::write_archive_heap_regions(GrowableArray<MemRegion> *heap_me
|
||||
int arr_len = heap_mem == NULL ? 0 : heap_mem->length();
|
||||
if(arr_len > max_num_regions) {
|
||||
fail_stop("Unable to write archive heap memory regions: "
|
||||
"number of memory regions exceeds maximum due to fragmentation");
|
||||
"number of memory regions exceeds maximum due to fragmentation."
|
||||
"Please increase java heap size "
|
||||
"(current MaxHeapSize is " SIZE_FORMAT ", InitialHeapSize is " SIZE_FORMAT ").",
|
||||
MaxHeapSize, InitialHeapSize);
|
||||
}
|
||||
|
||||
size_t total_size = 0;
|
||||
|
@ -57,9 +57,16 @@ public class LotsOfClasses {
|
||||
opts.addSuffix("--add-modules");
|
||||
opts.addSuffix("ALL-SYSTEM");
|
||||
opts.addSuffix("-Xlog:hashtables");
|
||||
opts.addSuffix("-Xms500m");
|
||||
opts.addSuffix("-Xmx500m");
|
||||
|
||||
OutputAnalyzer out = CDSTestUtils.createArchive(opts);
|
||||
CDSTestUtils.checkDump(out);
|
||||
try {
|
||||
CDSTestUtils.checkDump(out);
|
||||
} catch (java.lang.RuntimeException re) {
|
||||
out.shouldContain(
|
||||
"number of memory regions exceeds maximum due to fragmentation");
|
||||
}
|
||||
}
|
||||
|
||||
static void findAllClasses(ArrayList<String> list) throws Throwable {
|
||||
|
Loading…
x
Reference in New Issue
Block a user