-
Bug
-
Resolution: Not an Issue
-
P4
-
None
-
6u10
JVM seems to hang in ParallelScavenger (see comments for the test name and location). JVM options were -server -Xmixed.
jmap shows that 99% of young and old generations is used.
$ jmap <pid>
...
Heap Usage:
PS Young Generation
Eden Space:
capacity = 607125504 (579.0MB)
used = 606707960 (578.6017990112305MB)
free = 417544 (0.39820098876953125MB)
99.93122608138695% used
From Space:
capacity = 11010048 (10.5MB)
used = 0 (0.0MB)
free = 11010048 (10.5MB)
0.0% used
To Space:
capacity = 10944512 (10.4375MB)
used = 0 (0.0MB)
free = 10944512 (10.4375MB)
0.0% used
PS Old Generation
capacity = 2864709632 (2732.0MB)
used = 2863999680 (2731.3229370117188MB)
free = 709952 (0.67706298828125MB)
99.97521731375252% used
...
dbx shows one of threads working in GC:
(dbx) thread t@9
where
t@9 (l@9) stopped in PSMarkSweepDecorator::precompact at 0xffffffff7de17810
0xffffffff7de17810: precompact+0x0610: ldx [%l2], %g3
(dbx) where
current thread: t@9
=>[1] PSMarkSweepDecorator::precompact(0xfffffffe70000e20, 0xffffffff7e6110b8, 0xffffffff44300000, 0xffffffff25800840, 0x10010fa40, 0x20003), at 0xffffffff7de17810
[2] PSYoungGen::precompact(0x10011a260, 0xffffffff7e6110b8, 0x5d0b8, 0xffffffff7e5b4000, 0x770384, 0x5d000), at 0xffffffff7de451ec
[3] PSMarkSweep::invoke_no_policy(0x10011c240, 0x10011a300, 0xffffffff7e436ad1, 0x5d000, 0xffffffff7e616cd8, 0x10011c240), at 0xffffffff7e266194
[4] PSScavenge::invoke(0xa, 0x10011a130, 0x1001125c0, 0x340d54, 0xffffffff7e5b4000, 0xffffffff7e619460), at 0xffffffff7e273448
[5] ParallelScavengeHeap::failed_mem_allocate(0x47d5b, 0x10003, 0x9, 0x10011a130, 0xffffffff7e5fbd5b, 0x0), at 0xffffffff7e24cf58
[6] VM_ParallelGCFailedAllocation::doit(0xffffffff7beff050, 0x8, 0x10011a130, 0x7aa7e4, 0xffffffff7e5b4000, 0xffffffff7e61bc38), at 0xffffffff7de098bc
[7] VM_Operation::evaluate(0xffffffff7beff050, 0x10010c690, 0xffffffff7bb, 0xffffffff7e5b4000, 0x1002b68f0, 0x1002b68e0), at 0xffffffff7de05a94
[8] VMThread::evaluate_operation(0x10010c690, 0xffffffff7beff050, 0x1002b68e0, 0x1002b6cc8, 0x1002b68f0, 0xffffffff7e5b4000), at 0xffffffff7e34b8bc
[9] VMThread::loop(0x1002b6400, 0x1001c0a10, 0x72000, 0xffffffff7e5fbc89, 0x47c00, 0x0), at 0xffffffff7e34be3c
[10] VMThread::run(0x1002b6400, 0x7f, 0x59340, 0xffffffff7e5b4000, 0x7260f4, 0x59000), at 0xffffffff7de8dfa4
[11] java_start(0x1002b6400, 0x276, 0x5be5c, 0xffffffff7e5b4000, 0x1002b7960, 0x5bc00), at 0xffffffff7e238afc
Another thread is allocating an array:
(dbx) thread t@2
where
t@2 (l@2) stopped in ___lwp_cond_wait at 0xffffffff7ecd47f0
0xffffffff7ecd47f0: ___lwp_cond_wait+0x0004: ta %icc,%g0 + 64
(dbx) where
current thread: t@2
=>[1] ___lwp_cond_wait(0x100118e48, 0x100118e30, 0x0, 0x0, 0x100118e00, 0xffffffff7e62bf40), at 0xffffffff7ecd47f0
[2] _lwp_cond_wait(0x100118e48, 0x100118e30, 0x0, 0xffffffff7ecbdb64, 0xffffffff7e6456c8, 0x916c8), at 0xffffffff7ecbdc14
[3] os::PlatformEvent::park(0x100118e30, 0x0, 0xffffffff7e42cde4, 0xffffffff7e5b4000, 0x100118e00, 0xffffffff7e62bf40), at 0xffffffff7e23ff50
[4] Monitor::IWait(0xffffffff7e5fb4a0, 0x100117c00, 0x0, 0x100116a80, 0xffffffff7e5b4000, 0x100118e00), at 0xffffffff7e225038
[5] Monitor::wait(0x100116a80, 0x100117c00, 0x0, 0x0, 0xffffffff7e5fb37b, 0x5aa78), at 0xffffffff7e225d2c
[6] VMThread::execute(0xffffffff7beff050, 0xffffffff7e60d2a8, 0xffffffff7e617f38, 0x100117c00, 0x1, 0xffffffff7e5b4000), at 0xffffffff7de057e4
[7] ParallelScavengeHeap::mem_allocate(0x10011a130, 0x10003, 0x16, 0xffffffff7e619460, 0xffffffff7beff17f, 0xffffffff7e60d250), at 0xffffffff7e24cd60
[8] CollectedHeap::common_mem_allocate_noinit(0x0, 0x0, 0x100117c00, 0x10003, 0xffffffff7e5b4000, 0x0), at 0xffffffff7df0a740
[9] typeArrayKlass::allocate(0xfffffffe70000e30, 0x100118578, 0x100117c00, 0x8, 0x89ac28, 0x10003), at 0xffffffff7dd18f60
[10] InterpreterRuntime::newarray(0x100117c00, 0x8, 0x80000, 0xffffffff76016728, 0x8998bc, 0xffffffff7e5b4000), at 0xffffffff7dd1a768
[11] 0xffffffff760188f4(0x10000000, 0x0, 0x41, 0xffffffff76018220, 0x100117c00, 0xffffffff7befec61), at 0xffffffff760188f3
[12] 0xffffffff76005fdc(0xffffffff200916b0, 0x0, 0x0, 0xffffffff76018128, 0x1, 0xffffffff7befed91), at 0xffffffff76005fdb
[13] 0xffffffff76005d7c(0xffffffff20059068, 0x0, 0x801, 0xffffffff76017d00, 0x100117c00, 0xffffffff7befeef1), at 0xffffffff76005d7b
[14] 0xffffffff76005eac(0x10000000, 0x0, 0x0, 0xffffffff76017f80, 0x100117c00, 0xffffffff7befeff1), at 0xffffffff76005eab
[15] 0xffffffff76005eac(0xffffffff7beffe28, 0xa, 0x0, 0xffffffff76018128, 0x1, 0xffffffff7beff0e1), at 0xffffffff76005eab
[16] 0xffffffff76000240(0xffffffff7beffac0, 0xffffffff7beffe30, 0xa, 0xfffffffe70292a48, 0xffffffff7600bda0, 0xffffffff7beffcf8), at 0xffffffff7600023f
[17] JavaCalls::call_helper(0xffffffff7beffe28, 0xa, 0xffffffff7beffce8, 0x100117c00, 0x1, 0xfffffffe70292a48), at 0xffffffff7dd7ab80
[18] JavaCalls::call(0xffffffff7beffe28, 0x100118568, 0xffffffff7beffce8, 0x100117c00, 0x839400, 0x82ea04), at 0xffffffff7dd8562c
[19] jni_CallStaticVoidMethod(0x100117dc0, 0xffffffff7e603ec8, 0x100118568, 0x100117c00, 0x100118160, 0x100118538), at 0xffffffff7de28b2c
[20] JavaMain(0x100119208, 0x10010c1f0, 0xffffffff7e603610, 0x2, 0x1001d2fd0, 0x1001191e8), at 0x100003bc4
Some other threads are waiting on a monitor:
(dbx) thread t@10
t@10 (l@10) stopped in ___lwp_cond_wait at 0xffffffff7ecd47f0
0xffffffff7ecd47f0: ___lwp_cond_wait+0x0004: ta %icc,%g0 + 64
(dbx) where
current thread: t@10
=>[1] ___lwp_cond_wait(0x1002bc248, 0x1002bc230, 0x0, 0x0, 0x1002bc200, 0xffffffff7e62bf40), at 0xffffffff7ecd47f0
[2] _lwp_cond_wait(0x1002bc248, 0x1002bc230, 0x0, 0xffffffff7ecbdb64, 0xffffffff7e6456c8, 0x916c8), at 0xffffffff7ecbdc14
[3] os::PlatformEvent::park(0x1002bc230, 0x0, 0xffffffff7e42cde4, 0xffffffff7e5b4000, 0x1002bc200, 0xffffffff7e62bf40), at 0xffffffff7e23ff50
[4] ObjectMonitor::wait(0x1002be188, 0x0, 0x1, 0x1002bb400, 0x1002bb400, 0x0), at 0xffffffff7e2db2b8
[5] ObjectSynchronizer::wait(0x1002bbe18, 0x0, 0x474d1, 0x1002bbe18, 0x1002be188, 0x1002bb400), at 0xffffffff7de11098
[6] JVM_MonitorWait(0x0, 0x1002bbe18, 0x0, 0x1002bb400, 0x191, 0xffffffff7e5b4000), at 0xffffffff7de10d04
[7] 0xffffffff7600dff4(0x39, 0xffffffff792ff508, 0xffffffff792ff410, 0xffffffffffffff10, 0x1002bb40, 0x0), at 0xffffffff7600dff3
[8] 0xffffffff7600df9c(0xfffffffe7cb00e38, 0xffffffff792ff5f0, 0x0, 0x18, 0x1, 0xffffffff792fec41), at 0xffffffff7600df9b
[9] 0xffffffff76005fdc(0xfffffffe7cb00e38, 0xb8, 0x0, 0xffffffff7601ac70, 0x1002bb40, 0xffffffff792fed41), at 0xffffffff76005fdb
[10] 0xffffffff76005fdc(0xffffffff792ffce8, 0xa, 0x0, 0xffffffff76018128, 0x1, 0xffffffff792fee61), at 0xffffffff76005fdb
[11] 0xffffffff76000240(0xffffffff792ff840, 0xffffffff792ffcf0, 0xa, 0xfffffffe700cd850, 0xffffffff7600bda0, 0xffffffff792ffae8), at 0xffffffff7600023f
[12] JavaCalls::call_helper(0xffffffff792ffce8, 0xa, 0xffffffff792ffad8, 0x1002bb400, 0x1, 0xfffffffe700cd850), at 0xffffffff7dd7ab80
[13] JavaCalls::call_virtual(0xffffffff792ffce8, 0x1002bbdf8, 0xfffffffe700cd8c8, 0xffffffff7e5b4000, 0xffffffff792ffad8, 0xffffffffff7c69c0), at 0xffffffff7e04506c
[14] JavaCalls::call_virtual(0xffffffff792ffce8, 0x1002bbdf0, 0x1002bbdf8, 0xffffffff7e62c890, 0xffffffff7e62cd68, 0x1002bb400), at 0xffffffff7de1967c
[15] thread_entry(0xffffffff20001088, 0x1002bb400, 0x78338, 0x787cdc, 0xffffffff7e62c338, 0x78000), at 0xffffffff7de2c410
[16] JavaThread::thread_main_inner(0x1002bb400, 0xffffffff7e5b4000, 0xffffffff20001088, 0x0, 0x2bc52c, 0xffffffff7e5b4000), at 0xffffffff7e2f7b14
[17] java_start(0x1002bb400, 0x276, 0x5be5c, 0xffffffff7e5b4000, 0x1002bc9a0, 0x5bc00), at 0xffffffff7e238afc
(dbx)
jmap shows that 99% of young and old generations is used.
$ jmap <pid>
...
Heap Usage:
PS Young Generation
Eden Space:
capacity = 607125504 (579.0MB)
used = 606707960 (578.6017990112305MB)
free = 417544 (0.39820098876953125MB)
99.93122608138695% used
From Space:
capacity = 11010048 (10.5MB)
used = 0 (0.0MB)
free = 11010048 (10.5MB)
0.0% used
To Space:
capacity = 10944512 (10.4375MB)
used = 0 (0.0MB)
free = 10944512 (10.4375MB)
0.0% used
PS Old Generation
capacity = 2864709632 (2732.0MB)
used = 2863999680 (2731.3229370117188MB)
free = 709952 (0.67706298828125MB)
99.97521731375252% used
...
dbx shows one of threads working in GC:
(dbx) thread t@9
where
t@9 (l@9) stopped in PSMarkSweepDecorator::precompact at 0xffffffff7de17810
0xffffffff7de17810: precompact+0x0610: ldx [%l2], %g3
(dbx) where
current thread: t@9
=>[1] PSMarkSweepDecorator::precompact(0xfffffffe70000e20, 0xffffffff7e6110b8, 0xffffffff44300000, 0xffffffff25800840, 0x10010fa40, 0x20003), at 0xffffffff7de17810
[2] PSYoungGen::precompact(0x10011a260, 0xffffffff7e6110b8, 0x5d0b8, 0xffffffff7e5b4000, 0x770384, 0x5d000), at 0xffffffff7de451ec
[3] PSMarkSweep::invoke_no_policy(0x10011c240, 0x10011a300, 0xffffffff7e436ad1, 0x5d000, 0xffffffff7e616cd8, 0x10011c240), at 0xffffffff7e266194
[4] PSScavenge::invoke(0xa, 0x10011a130, 0x1001125c0, 0x340d54, 0xffffffff7e5b4000, 0xffffffff7e619460), at 0xffffffff7e273448
[5] ParallelScavengeHeap::failed_mem_allocate(0x47d5b, 0x10003, 0x9, 0x10011a130, 0xffffffff7e5fbd5b, 0x0), at 0xffffffff7e24cf58
[6] VM_ParallelGCFailedAllocation::doit(0xffffffff7beff050, 0x8, 0x10011a130, 0x7aa7e4, 0xffffffff7e5b4000, 0xffffffff7e61bc38), at 0xffffffff7de098bc
[7] VM_Operation::evaluate(0xffffffff7beff050, 0x10010c690, 0xffffffff7bb, 0xffffffff7e5b4000, 0x1002b68f0, 0x1002b68e0), at 0xffffffff7de05a94
[8] VMThread::evaluate_operation(0x10010c690, 0xffffffff7beff050, 0x1002b68e0, 0x1002b6cc8, 0x1002b68f0, 0xffffffff7e5b4000), at 0xffffffff7e34b8bc
[9] VMThread::loop(0x1002b6400, 0x1001c0a10, 0x72000, 0xffffffff7e5fbc89, 0x47c00, 0x0), at 0xffffffff7e34be3c
[10] VMThread::run(0x1002b6400, 0x7f, 0x59340, 0xffffffff7e5b4000, 0x7260f4, 0x59000), at 0xffffffff7de8dfa4
[11] java_start(0x1002b6400, 0x276, 0x5be5c, 0xffffffff7e5b4000, 0x1002b7960, 0x5bc00), at 0xffffffff7e238afc
Another thread is allocating an array:
(dbx) thread t@2
where
t@2 (l@2) stopped in ___lwp_cond_wait at 0xffffffff7ecd47f0
0xffffffff7ecd47f0: ___lwp_cond_wait+0x0004: ta %icc,%g0 + 64
(dbx) where
current thread: t@2
=>[1] ___lwp_cond_wait(0x100118e48, 0x100118e30, 0x0, 0x0, 0x100118e00, 0xffffffff7e62bf40), at 0xffffffff7ecd47f0
[2] _lwp_cond_wait(0x100118e48, 0x100118e30, 0x0, 0xffffffff7ecbdb64, 0xffffffff7e6456c8, 0x916c8), at 0xffffffff7ecbdc14
[3] os::PlatformEvent::park(0x100118e30, 0x0, 0xffffffff7e42cde4, 0xffffffff7e5b4000, 0x100118e00, 0xffffffff7e62bf40), at 0xffffffff7e23ff50
[4] Monitor::IWait(0xffffffff7e5fb4a0, 0x100117c00, 0x0, 0x100116a80, 0xffffffff7e5b4000, 0x100118e00), at 0xffffffff7e225038
[5] Monitor::wait(0x100116a80, 0x100117c00, 0x0, 0x0, 0xffffffff7e5fb37b, 0x5aa78), at 0xffffffff7e225d2c
[6] VMThread::execute(0xffffffff7beff050, 0xffffffff7e60d2a8, 0xffffffff7e617f38, 0x100117c00, 0x1, 0xffffffff7e5b4000), at 0xffffffff7de057e4
[7] ParallelScavengeHeap::mem_allocate(0x10011a130, 0x10003, 0x16, 0xffffffff7e619460, 0xffffffff7beff17f, 0xffffffff7e60d250), at 0xffffffff7e24cd60
[8] CollectedHeap::common_mem_allocate_noinit(0x0, 0x0, 0x100117c00, 0x10003, 0xffffffff7e5b4000, 0x0), at 0xffffffff7df0a740
[9] typeArrayKlass::allocate(0xfffffffe70000e30, 0x100118578, 0x100117c00, 0x8, 0x89ac28, 0x10003), at 0xffffffff7dd18f60
[10] InterpreterRuntime::newarray(0x100117c00, 0x8, 0x80000, 0xffffffff76016728, 0x8998bc, 0xffffffff7e5b4000), at 0xffffffff7dd1a768
[11] 0xffffffff760188f4(0x10000000, 0x0, 0x41, 0xffffffff76018220, 0x100117c00, 0xffffffff7befec61), at 0xffffffff760188f3
[12] 0xffffffff76005fdc(0xffffffff200916b0, 0x0, 0x0, 0xffffffff76018128, 0x1, 0xffffffff7befed91), at 0xffffffff76005fdb
[13] 0xffffffff76005d7c(0xffffffff20059068, 0x0, 0x801, 0xffffffff76017d00, 0x100117c00, 0xffffffff7befeef1), at 0xffffffff76005d7b
[14] 0xffffffff76005eac(0x10000000, 0x0, 0x0, 0xffffffff76017f80, 0x100117c00, 0xffffffff7befeff1), at 0xffffffff76005eab
[15] 0xffffffff76005eac(0xffffffff7beffe28, 0xa, 0x0, 0xffffffff76018128, 0x1, 0xffffffff7beff0e1), at 0xffffffff76005eab
[16] 0xffffffff76000240(0xffffffff7beffac0, 0xffffffff7beffe30, 0xa, 0xfffffffe70292a48, 0xffffffff7600bda0, 0xffffffff7beffcf8), at 0xffffffff7600023f
[17] JavaCalls::call_helper(0xffffffff7beffe28, 0xa, 0xffffffff7beffce8, 0x100117c00, 0x1, 0xfffffffe70292a48), at 0xffffffff7dd7ab80
[18] JavaCalls::call(0xffffffff7beffe28, 0x100118568, 0xffffffff7beffce8, 0x100117c00, 0x839400, 0x82ea04), at 0xffffffff7dd8562c
[19] jni_CallStaticVoidMethod(0x100117dc0, 0xffffffff7e603ec8, 0x100118568, 0x100117c00, 0x100118160, 0x100118538), at 0xffffffff7de28b2c
[20] JavaMain(0x100119208, 0x10010c1f0, 0xffffffff7e603610, 0x2, 0x1001d2fd0, 0x1001191e8), at 0x100003bc4
Some other threads are waiting on a monitor:
(dbx) thread t@10
t@10 (l@10) stopped in ___lwp_cond_wait at 0xffffffff7ecd47f0
0xffffffff7ecd47f0: ___lwp_cond_wait+0x0004: ta %icc,%g0 + 64
(dbx) where
current thread: t@10
=>[1] ___lwp_cond_wait(0x1002bc248, 0x1002bc230, 0x0, 0x0, 0x1002bc200, 0xffffffff7e62bf40), at 0xffffffff7ecd47f0
[2] _lwp_cond_wait(0x1002bc248, 0x1002bc230, 0x0, 0xffffffff7ecbdb64, 0xffffffff7e6456c8, 0x916c8), at 0xffffffff7ecbdc14
[3] os::PlatformEvent::park(0x1002bc230, 0x0, 0xffffffff7e42cde4, 0xffffffff7e5b4000, 0x1002bc200, 0xffffffff7e62bf40), at 0xffffffff7e23ff50
[4] ObjectMonitor::wait(0x1002be188, 0x0, 0x1, 0x1002bb400, 0x1002bb400, 0x0), at 0xffffffff7e2db2b8
[5] ObjectSynchronizer::wait(0x1002bbe18, 0x0, 0x474d1, 0x1002bbe18, 0x1002be188, 0x1002bb400), at 0xffffffff7de11098
[6] JVM_MonitorWait(0x0, 0x1002bbe18, 0x0, 0x1002bb400, 0x191, 0xffffffff7e5b4000), at 0xffffffff7de10d04
[7] 0xffffffff7600dff4(0x39, 0xffffffff792ff508, 0xffffffff792ff410, 0xffffffffffffff10, 0x1002bb40, 0x0), at 0xffffffff7600dff3
[8] 0xffffffff7600df9c(0xfffffffe7cb00e38, 0xffffffff792ff5f0, 0x0, 0x18, 0x1, 0xffffffff792fec41), at 0xffffffff7600df9b
[9] 0xffffffff76005fdc(0xfffffffe7cb00e38, 0xb8, 0x0, 0xffffffff7601ac70, 0x1002bb40, 0xffffffff792fed41), at 0xffffffff76005fdb
[10] 0xffffffff76005fdc(0xffffffff792ffce8, 0xa, 0x0, 0xffffffff76018128, 0x1, 0xffffffff792fee61), at 0xffffffff76005fdb
[11] 0xffffffff76000240(0xffffffff792ff840, 0xffffffff792ffcf0, 0xa, 0xfffffffe700cd850, 0xffffffff7600bda0, 0xffffffff792ffae8), at 0xffffffff7600023f
[12] JavaCalls::call_helper(0xffffffff792ffce8, 0xa, 0xffffffff792ffad8, 0x1002bb400, 0x1, 0xfffffffe700cd850), at 0xffffffff7dd7ab80
[13] JavaCalls::call_virtual(0xffffffff792ffce8, 0x1002bbdf8, 0xfffffffe700cd8c8, 0xffffffff7e5b4000, 0xffffffff792ffad8, 0xffffffffff7c69c0), at 0xffffffff7e04506c
[14] JavaCalls::call_virtual(0xffffffff792ffce8, 0x1002bbdf0, 0x1002bbdf8, 0xffffffff7e62c890, 0xffffffff7e62cd68, 0x1002bb400), at 0xffffffff7de1967c
[15] thread_entry(0xffffffff20001088, 0x1002bb400, 0x78338, 0x787cdc, 0xffffffff7e62c338, 0x78000), at 0xffffffff7de2c410
[16] JavaThread::thread_main_inner(0x1002bb400, 0xffffffff7e5b4000, 0xffffffff20001088, 0x0, 0x2bc52c, 0xffffffff7e5b4000), at 0xffffffff7e2f7b14
[17] java_start(0x1002bb400, 0x276, 0x5be5c, 0xffffffff7e5b4000, 0x1002bc9a0, 0x5bc00), at 0xffffffff7e238afc
(dbx)