Created
January 31, 2012 09:05
-
-
Save rednaxelafx/1709569 to your computer and use it in GitHub Desktop.
follow up (2): Example of NIO direct memory OOME on JDK7b147 https://gist.github.com/1704102
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ java -XX:+PrintReferenceGC -XX:+DisableExplicitGC -XX:+PrintGCDetails -XX:MaxDirectMemorySize=10m -XX:+UseSerialGC -XX:+TraceReferenceGC -Xbootclasspath/p:altclasses -XX:InitialHeapSize=16777216 -XX:MaxHeapSize=268435456 NativeMemoryGC >trace.log 2>&1 | |
$ java -version | |
java version "1.7.0_01" | |
Java(TM) SE Runtime Environment (build 1.7.0_01-b08) | |
OpenJDK 64-Bit Server VM (build 20.0-b12-internal-fastdebug, mixed mode) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff -r 8389681cd7b1 src/share/vm/memory/referenceProcessor.cpp | |
--- a/src/share/vm/memory/referenceProcessor.cpp Tue Nov 15 16:44:09 2011 -0800 | |
+++ b/src/share/vm/memory/referenceProcessor.cpp Tue Jan 31 17:04:27 2012 +0800 | |
@@ -1187,14 +1187,31 @@ | |
// and complexity in processing these references. | |
// We call this choice the "RefeferentBasedDiscovery" policy. | |
bool ReferenceProcessor::discover_reference(oop obj, ReferenceType rt) { | |
+ bool is_cleaner = false; | |
+ { | |
+ ResourceMark rm; | |
+ char* klass_name = obj->blueprint()->name()->as_C_string(); | |
+ if (strcmp("sun/misc/Cleaner", klass_name) == 0 && PrintGCDetails && TraceReferenceGC) { | |
+ is_cleaner = true; | |
+ gclog_or_tty->print_cr("sun.misc.Cleaner @ " INTPTR_FORMAT " being discovered", | |
+ obj); | |
+ } | |
+ } | |
+ | |
// We enqueue references only if we are discovering refs | |
// (rather than processing discovered refs). | |
if (!_discovering_refs || !RegisterReferences) { | |
+ if (is_cleaner && TraceReferenceGC && PrintGCDetails) { | |
+ gclog_or_tty->print_cr(" not discovering refs"); | |
+ } | |
return false; | |
} | |
// We only enqueue active references. | |
oop next = java_lang_ref_Reference::next(obj); | |
if (next != NULL) { | |
+ if (is_cleaner && TraceReferenceGC && PrintGCDetails) { | |
+ gclog_or_tty->print_cr(" this reference is not active"); | |
+ } | |
return false; | |
} | |
@@ -1204,6 +1221,9 @@ | |
// Reference is not in the originating generation; | |
// don't treat it specially (i.e. we want to scan it as a normal | |
// object with strong references). | |
+ if (is_cleaner && TraceReferenceGC && PrintGCDetails) { | |
+ gclog_or_tty->print_cr(" this reference is not in the originating generation"); | |
+ } | |
return false; | |
} | |
@@ -1212,6 +1232,9 @@ | |
if (is_alive_non_header() != NULL) { | |
verify_referent(obj); | |
if (is_alive_non_header()->do_object_b(java_lang_ref_Reference::referent(obj))) { | |
+ if (is_cleaner && TraceReferenceGC && PrintGCDetails) { | |
+ gclog_or_tty->print_cr(" the referent is reachable"); | |
+ } | |
return false; // referent is reachable | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[GC VM option '+PrintReferenceGC' | |
VM option '+DisableExplicitGC' | |
VM option '+PrintGCDetails' | |
VM option 'MaxDirectMemorySize=10m' | |
VM option '+UseSerialGC' | |
VM option '+TraceReferenceGC' | |
VM option 'InitialHeapSize=16777216' | |
VM option 'MaxHeapSize=268435456' | |
[DefNewsun.misc.Cleaner @ 0x00000000eb2d0630 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2d0630: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ad8 | |
Enqueued reference (0x00000000eb2d4ab0: java.lang.ref.Finalizer) | |
sun.misc.Cleaner @ 0x00000000eb2d57c0 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2d57c0: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ad8 | |
Enqueued reference (0x00000000eb2da568: java.lang.ref.Finalizer) | |
sun.misc.Cleaner @ 0x00000000eb2dd448 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2dd448: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2e12f8: java.util.WeakHashMap$Entry) | |
... omitted 52 java.util.WeakHashMap$Entry ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2e2b90: java.util.WeakHashMap$Entry) | |
sun.misc.Cleaner @ 0x00000000eb2f08a0 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2f08a0: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1878: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1898: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f18b8: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1900: java.lang.ref.WeakReference) | |
... omitted 4 java.lang.ref.WeakReference ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1aa0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1b00: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1b48: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1b90: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1bb8: java.lang.ref.WeakReference) | |
... omitted 7 java.lang.ref.WeakReference ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1df8: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f1e38: java.util.WeakHashMap$Entry) | |
... omitted 26 java.util.WeakHashMap$Entry ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f3600: java.util.WeakHashMap$Entry) | |
sun.misc.Cleaner @ 0x00000000eb2f6a38 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2f6a38: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f6ea0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f6f28: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f6fb0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f72d0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f72f0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7310: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7338: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7358: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7378: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7398: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f73b8: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f73e0: java.lang.ref.WeakReference) | |
... omitted 5 java.lang.ref.WeakReference ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7920: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7940: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7968: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7988: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f79a8: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f79c8: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f79e8: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7a10: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2f7a30: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ad8 | |
Enqueued reference (0x00000000eb2fa988: java.lang.ref.Finalizer) | |
sun.misc.Cleaner @ 0x00000000eb2ff5a8 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2ff5a8: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ff5f0: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ff9c8: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ff9e8: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ffa10: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ffa30: java.util.WeakHashMap$Entry) | |
... omitted 7 java.util.WeakHashMap$Entry ... | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ffd40: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ffd78: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb2ffd98: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ad8 | |
Enqueued reference (0x00000000eb301760: java.lang.ref.Finalizer) | |
sun.misc.Cleaner @ 0x00000000eb302160 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb302160: sun.misc.Cleaner) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb3021a8: java.lang.ref.WeakReference) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb302228: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb302350: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ac0 | |
Enqueued reference (0x00000000eb3023b8: java.util.WeakHashMap$Entry) | |
Thread 0 gets list 0x000000001d0f9ad8 | |
Enqueued reference (0x00000000eb303ea0: java.lang.ref.Finalizer) | |
sun.misc.Cleaner @ 0x00000000eb304c78 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb304c78: sun.misc.Cleaner) | |
... omitted 2855 sun.misc.Cleaner ... | |
sun.misc.Cleaner @ 0x00000000eb34ff78 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb34ff78: sun.misc.Cleaner) | |
sun.misc.Cleaner @ 0x00000000eb34ffc0 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb34ffc0: sun.misc.Cleaner) | |
sun.misc.Cleaner @ 0x00000000f0350020 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f0350068 being discovered | |
this reference is not in the originating generation | |
... omitted 24601 sun.misc.Cleaner not in originating generation ... | |
sun.misc.Cleaner @ 0x00000000f0680e38 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f0680ec0 being discovered | |
this reference is not in the originating generation | |
[SoftReference, 0 refs Dropped 0 dead Refs out of 0 discovered Refs by policy list 0x00000000faea2a38 | |
Dropped 0 active Refs out of 0 Refs in discovered list 0x00000000faea2a38 | |
, 0.0000240 secs][WeakReference, 148 refsDropping strongly reachable reference (0x00000000eb3023b8: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb302350: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb302228: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb3021a8: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2ffd98: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2ffd78: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2ffd40: java.util.WeakHashMap$Entry) | |
... omitted 7 strongly reachable java.util.WeakHashMap$Entry ... | |
Dropping strongly reachable reference (0x00000000eb2ffa30: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2ffa10: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2ff9e8: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2ff9c8: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2ff5f0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7a30: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7a10: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f79e8: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f79c8: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f79a8: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7988: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7968: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7940: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f7920: java.lang.ref.WeakReference) | |
... omitted 5 strongly reachable java.lang.ref.WeakReference ... | |
Dropping strongly reachable reference (0x00000000eb2f73e0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f73b8: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f7398: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7378: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7358: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7338: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f7310: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f72f0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f72d0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f6fb0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f6f28: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f6ea0: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f3600: java.util.WeakHashMap$Entry) | |
... omitted 26 strongly reachable java.util.WeakHashMap$Entry ... | |
Dropping strongly reachable reference (0x00000000eb2f1e38: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f1df8: java.lang.ref.WeakReference) | |
... omitted 7 strongly reachable java.lang.ref.WeakReference ... | |
Dropping strongly reachable reference (0x00000000eb2f1bb8: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f1b90: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f1b48: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f1b00: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f1aa0: java.lang.ref.WeakReference) | |
... omitted 4 strongly reachable java.util.WeakHashMap$Entry ... | |
Dropping strongly reachable reference (0x00000000eb2f1900: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f18b8: java.util.WeakHashMap$Entry) | |
Dropping strongly reachable reference (0x00000000eb2f1898: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2f1878: java.lang.ref.WeakReference) | |
Dropping strongly reachable reference (0x00000000eb2e2b90: java.util.WeakHashMap$Entry) | |
... omitted 52 strongly reachable java.util.WeakHashMap$Entry ... | |
Dropping strongly reachable reference (0x00000000eb2e12f8: java.util.WeakHashMap$Entry) | |
Dropped 148 active Refs out of 148 Refs in discovered list 0x00000000faea2a38 | |
, 0.0010210 secs][FinalReference, 5 refsDropping strongly reachable reference (0x00000000eb2da568: java.lang.ref.Finalizer) | |
Dropped 1 active Refs out of 5 Refs in discovered list 0x00000000eb303ea0 | |
Adding reference (0x00000000eb303ea0: java.lang.ref.Finalizer) as pending | |
Adding reference (0x00000000eb301760: java.lang.ref.Finalizer) as pending | |
Adding reference (0x00000000eb2fa988: java.lang.ref.Finalizer) as pending | |
Adding reference (0x00000000eb2d4ab0: java.lang.ref.Finalizer) as pending | |
, 0.0000540 secs][PhantomReference, 2865 refs Dropped 0 active Refs out of 2865 Refs in discovered list 0x00000000eb34ffc0 | |
Adding reference (0x00000000eb34ffc0: sun.misc.Cleaner) as pending | |
Adding reference (0x00000000eb34ff78: sun.misc.Cleaner) as pending | |
... omitted 2861 pending sun.misc.Cleaner ... | |
Adding reference (0x00000000eb2d57c0: sun.misc.Cleaner) as pending | |
Adding reference (0x00000000eb2d0630: sun.misc.Cleaner) as pending | |
, 0.0191680 secs][JNI Weak Reference, 13 refs, 0.0000140 secs]ReferenceProcessor::enqueue_discovered_reflist list 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000eb303ea0 | |
obj 0x00000000eb303ea0/next 0x00000000eb301760 | |
obj 0x00000000eb301760/next 0x00000000eb2fa988 | |
obj 0x00000000eb2fa988/next 0x00000000eb2d4ab0 | |
obj 0x00000000eb2d4ab0/next 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000eb34ffc0 | |
obj 0x00000000eb34ffc0/next 0x00000000eb34ff78 | |
obj 0x00000000eb34ff78/next 0x00000000eb34ff30 | |
... omitted 2860 entries ... | |
obj 0x00000000eb2dd448/next 0x00000000eb2d57c0 | |
obj 0x00000000eb2d57c0/next 0x00000000eb2d0630 | |
obj 0x00000000eb2d0630/next 0x00000000faea2a38 | |
: 4416K->512K(4928K), 0.4264500 secs] 4416K->3959K(15872K), 0.4264900 secs] [Times: user=0.24 sys=0.18, real=0.42 secs] | |
[GC [DefNewsun.misc.Cleaner @ 0x00000000f0350020 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f0350068 being discovered | |
this reference is not in the originating generation | |
... omitted 24601 sun.misc.Cleaner not in originating generation (scanning card table) ... | |
sun.misc.Cleaner @ 0x00000000f0680e38 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f0680ec0 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000eb250000 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb250000: sun.misc.Cleaner) | |
sun.misc.Cleaner @ 0x00000000eb250028 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb250028: sun.misc.Cleaner) | |
... omitted 7279 sun.misc.Cleaner ... | |
sun.misc.Cleaner @ 0x00000000eb2cff88 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2cff88: sun.misc.Cleaner) | |
sun.misc.Cleaner @ 0x00000000eb2cffd0 being discovered | |
Thread 0 gets list 0x000000001d0f9af0 | |
Enqueued reference (0x00000000eb2cffd0: sun.misc.Cleaner) | |
sun.misc.Cleaner @ 0x00000000f06b2b98 being discovered | |
this reference is not active | |
sun.misc.Cleaner @ 0x00000000f06b2bc0 being discovered | |
this reference is not active | |
... omitted 2861 sun.misc.Cleaner not active ... | |
sun.misc.Cleaner @ 0x00000000f06ceaf0 being discovered | |
this reference is not active | |
sun.misc.Cleaner @ 0x00000000f06ceb18 being discovered | |
this reference is not active | |
sun.misc.Cleaner @ 0x00000000f06ceb60 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f06ceba8 being discovered | |
this reference is not in the originating generation | |
... omitted 25280 sun.misc.Cleaner not in originating generation ... | |
sun.misc.Cleaner @ 0x00000000f0a753c8 being discovered | |
this reference is not in the originating generation | |
sun.misc.Cleaner @ 0x00000000f0a75450 being discovered | |
this reference is not in the originating generation | |
[SoftReference, 0 refs Dropped 0 dead Refs out of 0 discovered Refs by policy list 0x00000000faea2a38 | |
Dropped 0 active Refs out of 0 Refs in discovered list 0x00000000faea2a38 | |
, 0.0000200 secs][WeakReference, 0 refs Dropped 0 active Refs out of 0 Refs in discovered list 0x00000000faea2a38 | |
, 0.0000100 secs][FinalReference, 0 refs Dropped 0 active Refs out of 0 Refs in discovered list 0x00000000faea2a38 | |
, 0.0000080 secs][PhantomReference, 7283 refs Dropped 0 active Refs out of 7283 Refs in discovered list 0x00000000eb2cffd0 | |
Adding reference (0x00000000eb2cffd0: sun.misc.Cleaner) as pending | |
Adding reference (0x00000000eb2cff88: sun.misc.Cleaner) as pending | |
... omitted 7279 pending sun.misc.Cleaner ... | |
Adding reference (0x00000000eb250028: sun.misc.Cleaner) as pending | |
Adding reference (0x00000000eb250000: sun.misc.Cleaner) as pending | |
, 0.0483880 secs][JNI Weak Reference, 14 refs, 0.0000120 secs]ReferenceProcessor::enqueue_discovered_reflist list 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000faea2a38 | |
ReferenceProcessor::enqueue_discovered_reflist list 0x00000000eb2cffd0 | |
obj 0x00000000eb2cffd0/next 0x00000000eb2cff88 | |
obj 0x00000000eb2cff88/next 0x00000000eb2cff40 | |
... omitted 7278 entries ... | |
obj 0x00000000eb250050/next 0x00000000eb250028 | |
obj 0x00000000eb250028/next 0x00000000eb250000 | |
obj 0x00000000eb250000/next 0x00000000faea2a38 | |
: 4928K->511K(4928K), 0.8516310 secs] 8375K->8284K(15872K), 0.8516900 secs] [Times: user=0.43 sys=0.43, real=0.85 secs] | |
java.lang.OutOfMemoryError: Direct buffer memory | |
at java.lang.Throwable.fillInStackTrace(Throwable.java:782) | |
at java.lang.Throwable.<init>(Throwable.java:265) | |
at java.lang.Error.<init>(Error.java:70) | |
at java.lang.VirtualMachineError.<init>(VirtualMachineError.java:52) | |
at java.lang.OutOfMemoryError.<init>(OutOfMemoryError.java:58) | |
at java.nio.Bits.reserveMemory(Bits.java:658) | |
at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:40) | |
at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:306) | |
at NativeMemoryGC.main(NativeMemoryGC.java:16) | |
OOME: DirectByteBuffer: allocated = 92068, deallocated = 10148 | |
Done | |
Heap | |
def new generation total 4928K, used 4927K [0x00000000eae00000, 0x00000000eb350000, 0x00000000f0350000) | |
eden space 4416K, 100% used [0x00000000eae00000, 0x00000000eb250000, 0x00000000eb250000) | |
from space 512K, 99% used [0x00000000eb250000, 0x00000000eb2cfff8, 0x00000000eb2d0000) | |
to space 512K, 0% used [0x00000000eb2d0000, 0x00000000eb2d0000, 0x00000000eb350000) | |
tenured generation total 10944K, used 7772K [0x00000000f0350000, 0x00000000f0e00000, 0x00000000fae00000) | |
the space 10944K, 71% used [0x00000000f0350000, 0x00000000f0ae7258, 0x00000000f0ae7400, 0x00000000f0e00000) | |
compacting perm gen total 21248K, used 4842K [0x00000000fae00000, 0x00000000fc2c0000, 0x0000000100000000) | |
the space 21248K, 22% used [0x00000000fae00000, 0x00000000fb2ba958, 0x00000000fb2baa00, 0x00000000fc2c0000) | |
No shared spaces configured. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment