<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns="http://purl.org/rss/1.0/">
<channel rdf:about="http://www.eclipse.org/forums/index.php">
	<title>Eclipse Community Forums RDF feed</title>
	<link>http://www.eclipse.org/forums/index.php</link>
	<description>Eclipse Community Forums RDF feed</description>
	<items>
		<rdf:Seq>
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509774&amp;th=161274#msg_509774" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509703&amp;th=156331#msg_509703" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509680&amp;th=161274#msg_509680" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=508041&amp;th=160578#msg_508041" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507966&amp;th=160717#msg_507966" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507963&amp;th=160717#msg_507963" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507945&amp;th=160717#msg_507945" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507943&amp;th=160717#msg_507943" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507928&amp;th=160578#msg_507928" />
			<rdf:li rdf:resource="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507924&amp;th=160717#msg_507924" />
		</rdf:Seq>
	</items>
</channel>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509774&amp;th=161274#msg_509774">
	<title>Re: MAT library API</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509774&amp;th=161274#msg_509774</link>
	<description><![CDATA[A good question. Unfortunately I can't give you the best possible answer.<br />
<br />
It's like this - at the moment we don't have any published documentation on how to develop with MAT APIs. There is also no javadoc published, although (most of) the API classes contain javadoc inside.<br />
<br />
I would suggest that you start with our Wiki page for contributors: <br />
<a href="http://wiki.eclipse.org/index.php?title=MemoryAnalyzer/Contributor_Reference" target="_blank"> http://wiki.eclipse.org/index.php?title=MemoryAnalyzer/Contr ibutor_Reference</a><br />
<br />
It describes our SVN location and how to get started with getting and building the sources.<br />
<br />
Most of the API is contained in the org.eclipse.mat.api plugin.<br />
<br />
You may look into the following two classes as a starting point:<br />
<div class="pre"><pre>org.eclipse.mat.snapshot.SnapshotFactory</pre></div> <br />
- this is how you can open a heap dump<br />
<br />
<div class="pre"><pre>org.eclipse.mat.snapshot.ISnapshot </pre></div><br />
- this is the &quot;central&quot; interface, having all the methods to get to the different classes, their instances, single objects, retained sets, etc... The interface has javadoc in it.<br />
<br />
Currently it is not possible to generate the heap dump from within the tool. There are some efforts in this direction - see bugzilla entry <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=229449" target="_blank">https://bugs.eclipse.org/bugs/show_bug.cgi?id=229449</a><br />
<br />
And about using the APIs - we are in the process of getting ready for our graduation, including our 1.0 release. In this process some of the APIs may be changed. The following bugzilla entry should track such changes: <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=299371" target="_blank">https://bugs.eclipse.org/bugs/show_bug.cgi?id=299371</a><br />
<br />
I'll be very interested to get your feedback on the API if you decide to give it a try. And your feedback on the tool in general - any suggestions, comments, critique ...<br />
<br />
Let me know if this explanation helps.]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Krum Tsvetkov</dc:creator>
	<dc:date>2010-01-25T11:15:13-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509703&amp;th=156331#msg_509703">
	<title>Re: download MAT for RAP</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509703&amp;th=156331#msg_509703</link>
	<description><![CDATA[Is the RAP version of Memory Analyzer now available?  Looks like the last indication was going to make it available in a couple of weeks, but I'm not able to find the RAP version on the MAT download pages.  <a href="http://www.eclipse.org/mat/downloads.php" target="_blank">http://www.eclipse.org/mat/downloads.php</a><br />
<br />
Can you please provide a link to where to download the RAP version?  Thanks.]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Dave Draeger</dc:creator>
	<dc:date>2010-01-25T01:03:05-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509680&amp;th=161274#msg_509680">
	<title>MAT library API</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=509680&amp;th=161274#msg_509680</link>
	<description><![CDATA[Do the MAT libraries have a documented API? I want to dynamically generate a memory dump then parse and query the resulting dump programmatically.<br />
<br />
I can't find any documentation on this topic.<br />
<br />
Any help would be appreciated.]]></description>
	<dc:subject></dc:subject>
	<dc:creator>No Real Name</dc:creator>
	<dc:date>2010-01-24T17:31:04-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=508041&amp;th=160578#msg_508041">
	<title>Re: How to Increase heap size for MAT in IBM ISA?</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=508041&amp;th=160578#msg_508041</link>
	<description><![CDATA[This help page for Memory Analyzer from IBM Support Assistant suggests the following:<br />
<br />
Tool: IBM Monitoring and Diagnostic Tools for Java™ - Memory Analyzer &gt; Troubleshooting<br />
Out Of Memory Errors<br />
Processing large dump files<br />
Processing large dump files using Memory Analyzer may sometimes fail with a java.lang.OutOfMemoryError. The default maximum Java heap size when running ISA 4.1 is 256Mb. We recommend running Memory Analyzer with at least 512Mb. <br />
<br />
To set the maximum heap size you can add a property value to the rcpinstall.properties file. <br />
<br />
Updating the rcpinstall.properties file<br />
The rcpinstall.properties file resides in the following workspace location: <br />
<br />
For Windows: <br />
&lt;home drive&gt;&lt;home path&gt;\IBM\ISAv41\.config\rcpinstall.properties <br />
For Linux: <br />
&lt;home&gt;/ibm/isa41/.config/rcpinstall.properties <br />
Add or update the value for vmarg.Xmx property. For example: <br />
<br />
vmarg.Xmx=-Xmx512m <br />
<br />
You will need to restart ISA for the change to take effect.<br />
]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Andrew Johnson</dc:creator>
	<dc:date>2010-01-15T16:18:16-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507966&amp;th=160717#msg_507966">
	<title>Re: Need help to analyse result given by MAT</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507966&amp;th=160717#msg_507966</link>
	<description><![CDATA[This with the debugging is really strange. I found it while playing with the problem described here <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=287852" target="_blank">https://bugs.eclipse.org/bugs/show_bug.cgi?id=287852</a><br />
<br />
I added one comment today, may be this helps the people there. <br />
<br />
The 2 classes you see are may be ok. Look who loaded them, who keeps them, etc...<br />
<br />
About the task manager I wouldn't worry. It does show how much memory the process reserved and uses, but doesn't reflect the state of the java heap. I mean, the memory in task manager may have grown as the java heap was resized. But this will probably stay so for a while even if GC can clean everything in the java heap.]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Krum Tsvetkov</dc:creator>
	<dc:date>2010-01-15T11:22:48-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507963&amp;th=160717#msg_507963">
	<title>Re: Need help to analyse result given by MAT</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507963&amp;th=160717#msg_507963</link>
	<description><![CDATA[OMG it seems that there are no more WebAppClassLoader retained when not be in remote debug mode and without the jconsole connected...<br />
I connected via the JConsole only at the end of repeating  several times(~20) the same operation to take the dump and it seems that there were no more leaks...<br />
<br />
Howevert I noticed that there still be 2 BirtEngine not instanciated but perhaps the GC is not passed onto it yet.<br />
<br />
Another thing that seems to be strange is that the memory usage displayed by Windows Task Manager is increasing a little amount at each time.<br />
<br />
But without debug mode it is hard to see exactly what happened. I hope that it is good.<br />
<br />
Thanks for your great help<br />
<br />
]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Aurelien Pupier</dc:creator>
	<dc:date>2010-01-15T10:43:25-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507945&amp;th=160717#msg_507945">
	<title>Re: Need help to analyse result given by MAT</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507945&amp;th=160717#msg_507945</link>
	<description><![CDATA[From what I see in your screen shots it seems that the classloader is referenced by several &quot;instances&quot; of the class BirtEngine. E.g. you can load  the same class more than once.<br />
MAT reports that those BirtEngine classes are GC roots because they are referenced by native code. Unfortunately there's no information in the heap dump that could tell you which native code. <br />
I would try to track down why and from where those BirtEngine classes are loaded. <br />
<br />
Hope that helps, <br />
Markus<br />
 <br />
]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Markus Kohler</dc:creator>
	<dc:date>2010-01-15T09:32:37-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507943&amp;th=160717#msg_507943">
	<title>Re: Need help to analyse result given by MAT</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507943&amp;th=160717#msg_507943</link>
	<description><![CDATA[Thanks for your answer, it helps me a lot : it gives valuable information to explore different ways.<br />
I will try that from now on<br />
<br />
I am in remote debug mode and I have a jconcole connected to take dump. I will give a give a try now without that.<br />
<br />
It seems that there is another path from GC roots, I will take a look deeper too.<br />
<br />
]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Aurelien Pupier</dc:creator>
	<dc:date>2010-01-15T09:25:48-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507928&amp;th=160578#msg_507928">
	<title>Re: How to Increase heap size for MAT in IBM ISA?</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507928&amp;th=160578#msg_507928</link>
	<description><![CDATA[Hi Jeroen,<br />
<br />
Thanks for pasting also the solution to your problem! I guess other users of the tool can find it helpful.<br />
<br />
Regards,<br />
Krum]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Krum Tsvetkov</dc:creator>
	<dc:date>2010-01-15T08:58:38-00:00</dc:date>
</item>

<item rdf:about="http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507924&amp;th=160717#msg_507924">
	<title>Re: Need help to analyse result given by MAT</title>
	<link>http://www.eclipse.org/forums/index.php?t=rview&amp;goto=507924&amp;th=160717#msg_507924</link>
	<description><![CDATA[Hi,<br />
<br />
This is a very interesting question.<br />
<br />
I think the analysis you did is very good, but the problem seems to be tricky. <br />
You found already that the classloaders are kept after the restart of the app, and you found one path to them - the one from the BirtEngine class. This class is marked as a GC root with the reason Native Heap, which should mean there is references somewhere from the native heap. And I can't tell why.<br />
<br />
The Merged Shrotest paths gives you only one path per object. What you could try is to run Paths From GC roots on one of the objects and see if it will return you more paths. You can also look at the inbound references to a classloader (context menu, list objects -&gt; with incoming references).<br />
<br />
Howefer all these are just to search for another path, and will not answer the question why the BirtEngine classes are marked as &quot;native heap&quot; GC roots.<br />
<br />
BTW, I remember I have seen some of my instances marked as &quot;Native heap&quot; and not removed as I was debugging, had a breakpoint on this place, and was using the &quot;All Instances&quot; context menu in the debugger. I couldn't explain it then. Were you by chance debugging when this happened?<br />
<br />
Does this help in any way?]]></description>
	<dc:subject></dc:subject>
	<dc:creator>Krum Tsvetkov</dc:creator>
	<dc:date>2010-01-15T08:54:25-00:00</dc:date>
</item>
</rdf:RDF>