mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-22 12:04:39 +02:00
8015391: NPG: With -XX:+UseCompressedKlassPointers OOME due to exhausted metadata space could occur when metaspace is almost empty
Allocate medium chunks for class metaspace when class loader has lots of classes Reviewed-by: mgerdin, jmasa
This commit is contained in:
parent
e7b16a5e79
commit
1e7c006d39
4 changed files with 61 additions and 46 deletions
|
@ -177,10 +177,12 @@ class Universe: AllStatic {
|
|||
static LatestMethodOopCache* _finalizer_register_cache; // static method for registering finalizable objects
|
||||
static LatestMethodOopCache* _loader_addClass_cache; // method for registering loaded classes in class loader vector
|
||||
static ActiveMethodOopsCache* _reflect_invoke_cache; // method for security checks
|
||||
static oop _out_of_memory_error_java_heap; // preallocated error object (no backtrace)
|
||||
static oop _out_of_memory_error_perm_gen; // preallocated error object (no backtrace)
|
||||
static oop _out_of_memory_error_array_size;// preallocated error object (no backtrace)
|
||||
static oop _out_of_memory_error_gc_overhead_limit; // preallocated error object (no backtrace)
|
||||
// preallocated error objects (no backtrace)
|
||||
static oop _out_of_memory_error_java_heap;
|
||||
static oop _out_of_memory_error_metaspace;
|
||||
static oop _out_of_memory_error_class_metaspace;
|
||||
static oop _out_of_memory_error_array_size;
|
||||
static oop _out_of_memory_error_gc_overhead_limit;
|
||||
|
||||
static Array<int>* _the_empty_int_array; // Canonicalized int array
|
||||
static Array<u2>* _the_empty_short_array; // Canonicalized short array
|
||||
|
@ -348,7 +350,8 @@ class Universe: AllStatic {
|
|||
// may or may not have a backtrace. If error has a backtrace then the stack trace is already
|
||||
// filled in.
|
||||
static oop out_of_memory_error_java_heap() { return gen_out_of_memory_error(_out_of_memory_error_java_heap); }
|
||||
static oop out_of_memory_error_perm_gen() { return gen_out_of_memory_error(_out_of_memory_error_perm_gen); }
|
||||
static oop out_of_memory_error_metaspace() { return gen_out_of_memory_error(_out_of_memory_error_metaspace); }
|
||||
static oop out_of_memory_error_class_metaspace() { return gen_out_of_memory_error(_out_of_memory_error_class_metaspace); }
|
||||
static oop out_of_memory_error_array_size() { return gen_out_of_memory_error(_out_of_memory_error_array_size); }
|
||||
static oop out_of_memory_error_gc_overhead_limit() { return gen_out_of_memory_error(_out_of_memory_error_gc_overhead_limit); }
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue