


 



<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://docwiki.cisco.com/w/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://docwiki.cisco.com/w/index.php?title=How_to_debug_OutOfMemoryError&amp;feed=atom&amp;action=history</id>
		<title>How to debug OutOfMemoryError - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://docwiki.cisco.com/w/index.php?title=How_to_debug_OutOfMemoryError&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://docwiki.cisco.com/w/index.php?title=How_to_debug_OutOfMemoryError&amp;action=history"/>
		<updated>2013-05-26T03:57:00Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.16.0</generator>

	<entry>
		<id>http://docwiki.cisco.com/w/index.php?title=How_to_debug_OutOfMemoryError&amp;diff=34221&amp;oldid=prev</id>
		<title>Sdandu: New page: JVM can crash with OOM Error for multiple reasons.  * Where to check ** Check in the application logs for OutOfMemoryError     Exception in thread “xxx&quot; '''java.lang.OutOfMemoryError''':...</title>
		<link rel="alternate" type="text/html" href="http://docwiki.cisco.com/w/index.php?title=How_to_debug_OutOfMemoryError&amp;diff=34221&amp;oldid=prev"/>
				<updated>2010-09-24T06:09:36Z</updated>
		
		<summary type="html">&lt;p&gt;New page: JVM can crash with OOM Error for multiple reasons.  * Where to check ** Check in the application logs for OutOfMemoryError     Exception in thread “xxx&amp;quot; &amp;#39;&amp;#39;&amp;#39;java.lang.OutOfMemoryError&amp;#39;&amp;#39;&amp;#39;:...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;JVM can crash with OOM Error for multiple reasons. &lt;br /&gt;
* Where to check&lt;br /&gt;
** Check in the application logs for OutOfMemoryError&lt;br /&gt;
    Exception in thread “xxx&amp;quot; '''java.lang.OutOfMemoryError''': Java heap space&lt;br /&gt;
* OutOfMemoryError types&lt;br /&gt;
** Java heap space&lt;br /&gt;
** PermGen space&lt;br /&gt;
** Out of swap space&lt;br /&gt;
** unable to create new native thread&lt;br /&gt;
** Requested array size exceeds VM limit&lt;br /&gt;
** GC overhead limit exceeded&lt;br /&gt;
&lt;br /&gt;
* How to debug different OutOfMemory errors&lt;br /&gt;
** '''Java heap space'''&lt;br /&gt;
** '''GC overhead limit exceeded'''&lt;br /&gt;
*** Happens due to a memory leak.&lt;br /&gt;
*** Heap dumps are automatically generated at 70/80/90/98% thresholds of the heap size.&lt;br /&gt;
**** file name looks like heapDump_MIVR_70%Threshold.hprof.&lt;br /&gt;
*** When the application goes OOM, JVM generates a heap dump during the crash.&lt;br /&gt;
**** file name looks like  java_pid2665.hprof.&lt;br /&gt;
**** Due to a bug CSCte90486, this file can be collected only using remote account.&lt;br /&gt;
*** Collect the heap dumps (present in the service log directory. i.e. MIVR directory for engine heap dumps).&lt;br /&gt;
*** Collect the thread dump present in JVM.log file.&lt;br /&gt;
*** Refer [[ How to analyze heap dumps ]] for the procedure to analyze a heap dump.&lt;br /&gt;
&lt;br /&gt;
** '''PermGen space'''&lt;br /&gt;
*** Happens most probably due to ClassLoader leak.&lt;br /&gt;
*** When the application goes OOM, JVM generates a heap dump during the crash.&lt;br /&gt;
**** file name looks like  java_pid2665.hprof.&lt;br /&gt;
**** Due to a bug CSCte90486, this file can be collected only using remote account.&lt;br /&gt;
*** Collect the heap dumps.&lt;br /&gt;
*** Collect the thread dump present in the JVM.log file.&lt;br /&gt;
&lt;br /&gt;
** '''Out of swap space'''&lt;br /&gt;
*** Happens due to a memory leak in the JNI code, or in some native applications.&lt;br /&gt;
*** System is low on memory.&lt;br /&gt;
*** Collect the Perfmon counters of all the services running in the system.&lt;br /&gt;
*** Plot a graph of memory usage and find which process is the culprit.&lt;br /&gt;
 &lt;br /&gt;
** '''unable to create new native thread'''&lt;br /&gt;
*** Happens when OS runs out of system resources, or the application has run out of its address space due to excessive threads.&lt;br /&gt;
*** Collect the thread dump present in the JVM.log file.&lt;br /&gt;
*** Debug the perfmon logs to find the faulty application.&lt;br /&gt;
&lt;br /&gt;
** '''Requested array size exceeds VM limit'''&lt;br /&gt;
*** Happens due to an application bug or a memory leak.&lt;br /&gt;
*** Debug application logs and heap dumps if present.&lt;/div&gt;</summary>
		<author><name>Sdandu</name></author>	</entry>

	</feed>