<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: OutOfMemory PermGen with Sun JDK</title>
	<atom:link href="http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/feed/" rel="self" type="application/rss+xml" />
	<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/</link>
	<description>some personal, more technical - by Thomas Einwaller</description>
	<lastBuildDate>Wed, 10 Mar 2010 08:34:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: online bible</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-1529</link>
		<dc:creator>online bible</dc:creator>
		<pubDate>Thu, 04 Mar 2010 00:17:08 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-1529</guid>
		<description>I find it crazy that this is still a problem.</description>
		<content:encoded><![CDATA[<p>I find it crazy that this is still a problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: samaxes &#187; Classloader leaks and PermGen space</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-846</link>
		<dc:creator>samaxes &#187; Classloader leaks and PermGen space</dc:creator>
		<pubDate>Tue, 22 Apr 2008 23:46:08 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-846</guid>
		<description>[...] passing command line arguments to the JVM or changing the size of the PermGen space, others end up recommending using a VM from BEA or IBM, all without [...]</description>
		<content:encoded><![CDATA[<p>[...] passing command line arguments to the JVM or changing the size of the PermGen space, others end up recommending using a VM from BEA or IBM, all without [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tOMPSON&#8217;s blog &#187; Blog Archive &#187; OutOfMemory PermGen with Sun JDK reviewed again</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-369</link>
		<dc:creator>tOMPSON&#8217;s blog &#187; Blog Archive &#187; OutOfMemory PermGen with Sun JDK reviewed again</dc:creator>
		<pubDate>Thu, 11 Oct 2007 07:42:33 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-369</guid>
		<description>[...] response to my post about OutOfMemory PermGen errors in Tomcat with Sun JDK brought up some very interessting things. I learned a lot from Frank Kieviet&#8217;s blog about [...]</description>
		<content:encoded><![CDATA[<p>[...] response to my post about OutOfMemory PermGen errors in Tomcat with Sun JDK brought up some very interessting things. I learned a lot from Frank Kieviet&#8217;s blog about [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tompson</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-365</link>
		<dc:creator>tompson</dc:creator>
		<pubDate>Wed, 03 Oct 2007 07:57:01 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-365</guid>
		<description>I think I will run the test again with Tomcat 6.x as soon as I get a time frame ;-)</description>
		<content:encoded><![CDATA[<p>I think I will run the test again with Tomcat 6.x as soon as I get a time frame <img src='http://dertompson.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Developer&#8217;s Blog &#187; Blog Archive &#187; java.lang.OutOfMemoryError: PermGen space</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-346</link>
		<dc:creator>Developer&#8217;s Blog &#187; Blog Archive &#187; java.lang.OutOfMemoryError: PermGen space</dc:creator>
		<pubDate>Tue, 02 Oct 2007 06:08:18 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-346</guid>
		<description>[...] java.lang.OutOfMemoryError: PermGen space  [...]</description>
		<content:encoded><![CDATA[<p>[...] java.lang.OutOfMemoryError: PermGen space  [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: anjan bacchu</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-345</link>
		<dc:creator>anjan bacchu</dc:creator>
		<pubDate>Mon, 01 Oct 2007 22:17:33 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-345</guid>
		<description>hi there,

  tomcat 6.x fixed this bug (among others). try tomcat 6 and let us know if that worked.

BR,
~A</description>
		<content:encoded><![CDATA[<p>hi there,</p>
<p>  tomcat 6.x fixed this bug (among others). try tomcat 6 and let us know if that worked.</p>
<p>BR,<br />
~A</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: siddii</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-344</link>
		<dc:creator>siddii</dc:creator>
		<pubDate>Mon, 01 Oct 2007 22:08:28 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-344</guid>
		<description>Here is something I discovered a while ago which you might find useful
http://blogs.boxysystems.com/2007/4/11/tomcat-v5-0-28-memory-leak-exposed</description>
		<content:encoded><![CDATA[<p>Here is something I discovered a while ago which you might find useful<br />
<a href="http://blogs.boxysystems.com/2007/4/11/tomcat-v5-0-28-memory-leak-exposed" rel="nofollow">http://blogs.boxysystems.com/2007/4/11/tomcat-v5-0-28-memory-leak-exposed</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bwtaylor</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-343</link>
		<dc:creator>bwtaylor</dc:creator>
		<pubDate>Mon, 01 Oct 2007 22:05:15 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-343</guid>
		<description>This is a memory leak issue. It affects all app servers. It is caused by references from objects outside the webapp classloader back into the classes loaded by the webapp. One such reference prevents that class from being GC&#039;d, which prevents the classloader from being GC&#039;d, which prevents all classes under it from being GC&#039;d. 

These references fall into two types: a) classes that register with system classes (e.g. a JDBC driver in your webapp that registers with the system DriverManager) and b) ThreadLocals held by the connection pool. The ones in class a) are usually fixable by running cleanup code when your webapp context is destroyed. The ones in b) are much harder and this basically represents a bug/feature in both the ThreadLocal class and the fact that app servers don&#039;t have a convenient way to dedicate Threads to webapps and recreate them as part of reloading the web app. Careful use of ThreadLocals can alleviate this, but finding offenders is pretty hard, even with a good profiler.</description>
		<content:encoded><![CDATA[<p>This is a memory leak issue. It affects all app servers. It is caused by references from objects outside the webapp classloader back into the classes loaded by the webapp. One such reference prevents that class from being GC&#8217;d, which prevents the classloader from being GC&#8217;d, which prevents all classes under it from being GC&#8217;d. </p>
<p>These references fall into two types: a) classes that register with system classes (e.g. a JDBC driver in your webapp that registers with the system DriverManager) and b) ThreadLocals held by the connection pool. The ones in class a) are usually fixable by running cleanup code when your webapp context is destroyed. The ones in b) are much harder and this basically represents a bug/feature in both the ThreadLocal class and the fact that app servers don&#8217;t have a convenient way to dedicate Threads to webapps and recreate them as part of reloading the web app. Careful use of ThreadLocals can alleviate this, but finding offenders is pretty hard, even with a good profiler.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ozh</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-342</link>
		<dc:creator>ozh</dc:creator>
		<pubDate>Mon, 01 Oct 2007 20:01:56 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-342</guid>
		<description>This problem is not only for the tomcat.
I am running an application on the Apache Geronimo (jetty based) with JDK 5, after one or two days, jvm gives same error.</description>
		<content:encoded><![CDATA[<p>This problem is not only for the tomcat.<br />
I am running an application on the Apache Geronimo (jetty based) with JDK 5, after one or two days, jvm gives same error.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: stoney</title>
		<link>http://dertompson.com/2007/09/11/outofmemory-permgen-with-sun-jdk/comment-page-1/#comment-340</link>
		<dc:creator>stoney</dc:creator>
		<pubDate>Sun, 30 Sep 2007 06:31:25 +0000</pubDate>
		<guid isPermaLink="false">http://dertompson.com/index.php/2007/09/11/outofmemory-permgen-with-sun-jdk/#comment-340</guid>
		<description>the only thing that prevented me from experimenting with classloader leaks was the missing support for tracing classes in jhat. Fortunately, from JDK7b2 &lt;a href=&quot;http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6484556&quot; rel=&quot;nofollow&quot;&gt;this issue will be fixed&lt;/a&gt;, as can be seen in SUN&#039;s bug tracking system.

Another interesting thing about jhat I tumbled over, is the possibility to create custom reports by using jhat&#039;s OQL interface. A. Sundararajan&#039;s blog has some really good posts on that topic:

&lt;a href=&quot;http://blogs.sun.com/sundararajan/entry/querying_java_heap_with_oql&quot; rel=&quot;nofollow&quot;&gt;*) querying java heap with OQL&lt;/a&gt;
&lt;a href=&quot;http://blogs.sun.com/sundararajan/entry/jhat_s_javascript_interface&quot; rel=&quot;nofollow&quot;&gt;*) jhat&#039;s javascript interface&lt;/a&gt;</description>
		<content:encoded><![CDATA[<p>the only thing that prevented me from experimenting with classloader leaks was the missing support for tracing classes in jhat. Fortunately, from JDK7b2 <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6484556" rel="nofollow">this issue will be fixed</a>, as can be seen in SUN&#8217;s bug tracking system.</p>
<p>Another interesting thing about jhat I tumbled over, is the possibility to create custom reports by using jhat&#8217;s OQL interface. A. Sundararajan&#8217;s blog has some really good posts on that topic:</p>
<p><a href="http://blogs.sun.com/sundararajan/entry/querying_java_heap_with_oql" rel="nofollow">*) querying java heap with OQL</a><br />
<a href="http://blogs.sun.com/sundararajan/entry/jhat_s_javascript_interface" rel="nofollow">*) jhat&#8217;s javascript interface</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>
