• No replies
1 Post

Pinned topic Garbage collection: allocation failure question

‏2010-04-09T15:33:22Z |

In our system(WAS 6.1, Linux), we found a lot of allocation failure in verbose gc log, one of af entries is like this:
<af type="tenured" id="103" timestamp="Wed Apr 07 20:50:56 2010" intervalms="3265.907">
<minimum requested_bytes="649536" />
<time exclusiveaccessms="0.066" />
<tenured freebytes="152142816" totalbytes="1073741824" percent="14" >
<soa freebytes="122763632" totalbytes="1016833536" percent="12" />
<loa freebytes="29379184" totalbytes="56908288" percent="51" />
<gc type="global" id="105" totalid="105" intervalms="3271.304">
<classloadersunloaded count="1" timetakenms="69.078" />
<refs_cleared soft="325" threshold="32" weak="55700" phantom="0" />
<finalization objectsqueued="2378" />
<timesms mark="167.104" sweep="13.439" compact="0.000" total="250.246" />
<tenured freebytes="752069656" totalbytes="1073741824" percent="70" >
<soa freebytes="710988256" totalbytes="1016833536" percent="69" />
<loa freebytes="41081400" totalbytes="56908288" percent="72" />
<tenured freebytes="751420120" totalbytes="1073741824" percent="69" >
<soa freebytes="710338720" totalbytes="1016833536" percent="69" />
<loa freebytes="41081400" totalbytes="56908288" percent="72" />
<time totalms="261.922" />

Before GC, You can see the soa freebytes is 122MB(122763632), low is 29MB(29379184) free. The minimum request size is just 649KB(649536), why it causes allocation failure and why GC happen if there are still enough free space ?
Or it is because the minf is <30% which caused the GC in this occurance ?