Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Johnson2019-06-13 06:41:39 -0400
committerAndrew Johnson2019-06-13 06:46:52 -0400
commit0c4e58b8cfe2f5f6fbc455ce3a6dcce1e6133b22 (patch)
tree1400e873c00b7bfe2b792947a9d2b001e3995651
parent86479f8666636f6a1ee778729020414c4cad01e4 (diff)
downloadorg.eclipse.mat-0c4e58b8cfe2f5f6fbc455ce3a6dcce1e6133b22.tar.gz
org.eclipse.mat-0c4e58b8cfe2f5f6fbc455ce3a6dcce1e6133b22.tar.xz
org.eclipse.mat-0c4e58b8cfe2f5f6fbc455ce3a6dcce1e6133b22.zip
541539: Simple batch mode comparison of two snapshots
Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=541539 Add documentation and also a New and Noteworthy for 1.9 Change-Id: Ia98f483cdf141fa1502b2fdcbef32da48a3ea3f8
-rw-r--r--plugins/org.eclipse.mat.ui.help/noteworthy.dita108
-rw-r--r--plugins/org.eclipse.mat.ui.help/noteworthy.html139
-rw-r--r--plugins/org.eclipse.mat.ui.help/tasks/batch.dita184
-rw-r--r--plugins/org.eclipse.mat.ui.help/tasks/batch.html194
-rw-r--r--plugins/org.eclipse.mat.ui.help/toc.ditamap3
-rw-r--r--plugins/org.eclipse.mat.ui.help/toc.xml2
-rw-r--r--plugins/org.eclipse.mat.ui.help/welcome.dita1
-rw-r--r--plugins/org.eclipse.mat.ui.help/welcome.html2
8 files changed, 452 insertions, 181 deletions
diff --git a/plugins/org.eclipse.mat.ui.help/noteworthy.dita b/plugins/org.eclipse.mat.ui.help/noteworthy.dita
index 4c20b1d9..8dfabf68 100644
--- a/plugins/org.eclipse.mat.ui.help/noteworthy.dita
+++ b/plugins/org.eclipse.mat.ui.help/noteworthy.dita
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2008, 2018 SAP AG and others.
+ Copyright (c) 2008, 2019 SAP AG and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
@@ -8,19 +8,19 @@
Contributors:
SAP AG - initial API and implementation
- IBM Corporation - 1.4, 1.7, 1.8 updates
+ IBM Corporation - 1.4, 1.7, 1.8, 1.9 updates
-->
<!DOCTYPE reference PUBLIC "-//OASIS//DTD DITA Reference//EN" "reference.dtd" >
<reference id="ref_noteworthy" xml:lang="en-us">
<title>New and Noteworthy</title>
<shortdesc>Here are descriptions of some of the more interesting or
- significant changes made to the Memory Analyzer for the 1.8 release.
+ significant changes made to the Memory Analyzer for the 1.9 release.
</shortdesc>
<prolog>
<copyright>
<copyryear year=""></copyryear>
<copyrholder>
- Copyright (c) 2008, 2018 SAP AG and others.
+ Copyright (c) 2008, 2019 SAP AG and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
@@ -31,86 +31,44 @@
<refbody>
<section>
<title>Enhancements and fixes</title>
- <p>Eclipse Memory Analyzer 1.8 has support for generating and analyzing dumps
- from Java 9, Java 10 as well as Java 1.8 and previous versions.
- The acquire dump dialog and collection queries have been enhanced for this.</p>
- <ul>
- <li>Memory Analyzer RCP is now built with Photon.
- The following stand-alone builds are available:
+ <p>
+ One of the main enhancements is the <xref href="tasks/exportdump.dita">export HPROF</xref> query. This allows a new HPROF file to be generated from a snapshot,
+ with the redaction of data such as character or byte array values or field values. This could be useful
+ to allow future analysis of the new HPROF dump without exposing sensitive data.
+ </p>
+ <p>There is also a way to compare two heap dumps with a basic batch mode report using <xref href="tasks/batch.dita"><cmdname>ParseHeapDump</cmdname></xref>.</p>
+ <p>Memory Analyzer 1.8.1 also added more icons for queries and icons which worked better in high contrast or dark modes.</p>
<ul>
- <li>Windows (x86)</li>
- <li>Windows (x86_64)</li>
- <li>Mac OSX (Mac/Cocoa/x86_64)</li>
- <li>Linux (x86/GTK+)</li>
- <li>Linux (x86_64/GTK+)</li>
- <li>Linux (PPC64/GTK+)</li>
- <li>Linux (PPC64le/GTK+)</li>
- </ul>
- <note>
- Because of the <xref format="html" href="https://dev.eclipse.org/mhonarc/lists/eclipse-dev/msg10207.html">removal of Eclipse platform support</xref> for certain operating systems for
- <xref format="html" href="https://www.eclipse.org/eclipse/news/4.7/platform.php#unix-platforms-dropped">
- Oxygen</xref> and later the following stand-alone builds are not available for Memory Analyzer 1.8:
- <ul importance="obsolete">
- <li><i>Linux (PPC/GTK+)</i></li>
- <li><i>Linux (s390/GTK+)</i></li>
- <li><i>Linux (s390x/GTK+)</i></li>
- <li><i>Solaris 8 (x86/GTK+)</i></li>
- <li><i>Solaris 8 (SPARC/GTK+)</i></li>
- <li><i>HP-UX (IA64/GTK+)</i></li>
- <li><i>AIX (PPC/GTK+)</i></li>
- <li><i>AIX (PPC64/GTK+)</i></li>
- </ul>
- It is possible that Memory Analyzer 1.8 could be installed into
- <xref format="html" href="http://archive.eclipse.org/eclipse/downloads/drops4/R-4.6.3-201703010400/">
- Eclipse Neon for those platforms</xref> or into
- <xref format="html" href="https://www.eclipse.org/mat/previousReleases.php">previous releases of Eclipse Memory Analyzer</xref>
- but this has not been tested.
- </note>
- <note>
- Because of the <xref format="html" href="https://wiki.eclipse.org/Eclipse/Installation/Java8Required">requirements of Eclipse Neon and later</xref>, Java version 1.8 or later is required to run the RCP.
- <xref format="html" href="https://www.eclipse.org/mat/previousReleases.php">Previous releases of Eclipse Memory Analyzer</xref>
- could run with Java 1.6, 1.7 and 1.8.
- </note>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=317289">317289</xref> Extract information from Exception objects in the heap dumps
</li>
- <li>Memory Analyzer can now work with Java virtual machines, version 9 and version 10,
- as well as 1.8. Dumps from JVMs versions 1.5, 1.6 and 1.7 are still handled.
- Memory Analyzer has been tested with JVMs of the
- following types:
- <ul>
- <li>Oracle JVMs</li>
- <li>OpenJDK JVMs</li>
- <li>IBM JVMs</li>
- <li>OpenJ9 JVMs</li>
- </ul>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=380600">380600</xref> Resave Heap Dump without Unreachable Objects
</li>
- <li>Fixes for new Java 9 string format</li>
- <li>Acquire heap dumps - various improvements:
- <ul>
- <li>Attach API provider now works using <codeph>com.sun.tools.attach</codeph>
- allowing it to work with Oracle JVMs and IBM JVMs, version 1.8 SR5 and later.
- Earlier IBM JVMs continue to work using <codeph>com.ibm.tools.attach</codeph></li>
- <li>Sort columns of PID and provider</li>
- <li>Resizing of columns with window</li>
- <li>More help, including links to provider help</li>
- <li>Processes unavailable for dumps marked in <i>italics</i></li>
- <li>Attach API provide can generate HPROF dumps for Oracle and OpenJDK JVMS
- using HotSpot MX bean.</li>
- <li>Configure Heap Dump providers page jumps to appropriate provider when
- selected from a process.</li>
- </ul>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=519274">519274</xref> Redacted Binary or PHD dump so as to protect privacy data
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=538953">538953</xref> Create an option for DTFJIndexBuilder to suppress native class sizes
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=539750">539750</xref> java.util.ConcurrentModificationException with Calculate precise retained size and sort
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541245">541245</xref> Exceptions with result filtering
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541286">541286</xref> Missing shallow heap size values in comparison tables
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541539">541539</xref> Simple batch mode comparison of two snapshots
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=543045">543045</xref> Eclipse MAT does not show complete actual heap size(Heap dump size) on overview tab.
+ </li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=537579">537579</xref> ArrayIndexOutOfBoundsException in HashMapObjectLong.resize
</li>
- <li>Equinox Bundle Explorer now handles more recent Eclipse versions.</li>
- <li>More collections handled by collection queries, including collections from Java 9 and Java 10.</li>
- <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=520908">520908</xref>: Invalid thread object in ThreadOverviewQuery causes whole query to fail</li>
- <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=521999">521999</xref>: pString values not displayed analyzing some IBM core dumps</li>
+ <li>Fix for <xref format="html" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=539751">539751</xref> Unhandled event loop exception - InjectionException - WidgetMethodHandler is not handled for for command Command Copy
+ </li>
</ul>
</section>
<section>
- <title>New and Noteworthy for Memory Analyzer 1.7</title>
+ <title>New and Noteworthy for Memory Analyzer 1.8</title>
<p>
- The New and Noteworthy document for version 1.7 is available
- <xref format="html" href="http://www.eclipse.org/mat/1.7.0/noteworthy.html">here</xref>.
+ The New and Noteworthy document for version 1.8 is available
+ <xref format="html" href="http://www.eclipse.org/mat/1.8.0/noteworthy.html">here</xref>.
</p>
</section>
diff --git a/plugins/org.eclipse.mat.ui.help/noteworthy.html b/plugins/org.eclipse.mat.ui.help/noteworthy.html
index e35290af..0167e21f 100644
--- a/plugins/org.eclipse.mat.ui.help/noteworthy.html
+++ b/plugins/org.eclipse.mat.ui.help/noteworthy.html
@@ -6,10 +6,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="DC.Type" content="reference"/>
<meta name="DC.Title" content="New and Noteworthy"/>
-<meta name="abstract" content="Here are descriptions of some of the more interesting or significant changes made to the Memory Analyzer for the 1.8 release."/>
-<meta name="description" content="Here are descriptions of some of the more interesting or significant changes made to the Memory Analyzer for the 1.8 release."/>
-<meta name="copyright" content="Copyright (c) 2008, 2018 SAP AG and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
-<meta name="DC.Rights.Owner" content="Copyright (c) 2008, 2018 SAP AG and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
+<meta name="abstract" content="Here are descriptions of some of the more interesting or significant changes made to the Memory Analyzer for the 1.9 release."/>
+<meta name="description" content="Here are descriptions of some of the more interesting or significant changes made to the Memory Analyzer for the 1.9 release."/>
+<meta name="copyright" content="Copyright (c) 2008, 2019 SAP AG and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
+<meta name="DC.Rights.Owner" content="Copyright (c) 2008, 2019 SAP AG and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
<meta name="DC.Format" content="XHTML"/>
<meta name="DC.Identifier" content="ref_noteworthy"/>
<meta name="DC.Language" content="en-us"/>
@@ -24,134 +24,65 @@
<div class="body refbody"><p class="shortdesc">Here are descriptions of some of the more interesting or
- significant changes made to the Memory Analyzer for the 1.8 release.
+ significant changes made to the Memory Analyzer for the 1.9 release.
</p>
<div class="section"><h2 class="title sectiontitle">Enhancements and fixes</h2>
- <p class="p">Eclipse Memory Analyzer 1.8 has support for generating and analyzing dumps
- from Java 9, Java 10 as well as Java 1.8 and previous versions.
- The acquire dump dialog and collection queries have been enhanced for this.</p>
-
- <ul class="ul">
- <li class="li">Memory Analyzer RCP is now built with Photon.
- The following stand-alone builds are available:
- <ul class="ul">
- <li class="li">Windows (x86)</li>
-
- <li class="li">Windows (x86_64)</li>
-
- <li class="li">Mac OSX (Mac/Cocoa/x86_64)</li>
-
- <li class="li">Linux (x86/GTK+)</li>
-
- <li class="li">Linux (x86_64/GTK+)</li>
-
- <li class="li">Linux (PPC64/GTK+)</li>
+ <p class="p">
+ One of the main enhancements is the <a class="xref" href="tasks/exportdump.html">export HPROF</a> query. This allows a new HPROF file to be generated from a snapshot,
+ with the redaction of data such as character or byte array values or field values. This could be useful
+ to allow future analysis of the new HPROF dump without exposing sensitive data.
+ </p>
- <li class="li">Linux (PPC64le/GTK+)</li>
+ <p class="p">There is also a way to compare two heap dumps with a basic batch mode report using <a class="xref" href="tasks/batch.html"><span class="keyword cmdname">ParseHeapDump</span></a>.</p>
- </ul>
+ <p class="p">Memory Analyzer 1.8.1 also added more icons for queries and icons which worked better in high contrast or dark modes.</p>
- <div class="note note"><span class="notetitle">Note:</span>
- Because of the <a class="xref" href="https://dev.eclipse.org/mhonarc/lists/eclipse-dev/msg10207.html">removal of Eclipse platform support</a> for certain operating systems for
- <a class="xref" href="https://www.eclipse.org/eclipse/news/4.7/platform.php#unix-platforms-dropped">
- Oxygen</a> and later the following stand-alone builds are not available for Memory Analyzer 1.8:
<ul class="ul">
- <li class="li"><em class="ph i">Linux (PPC/GTK+)</em></li>
-
- <li class="li"><em class="ph i">Linux (s390/GTK+)</em></li>
-
- <li class="li"><em class="ph i">Linux (s390x/GTK+)</em></li>
-
- <li class="li"><em class="ph i">Solaris 8 (x86/GTK+)</em></li>
-
- <li class="li"><em class="ph i">Solaris 8 (SPARC/GTK+)</em></li>
-
- <li class="li"><em class="ph i">HP-UX (IA64/GTK+)</em></li>
-
- <li class="li"><em class="ph i">AIX (PPC/GTK+)</em></li>
-
- <li class="li"><em class="ph i">AIX (PPC64/GTK+)</em></li>
-
- </ul>
-
- It is possible that Memory Analyzer 1.8 could be installed into
- <a class="xref" href="http://archive.eclipse.org/eclipse/downloads/drops4/R-4.6.3-201703010400/">
- Eclipse Neon for those platforms</a> or into
- <a class="xref" href="https://www.eclipse.org/mat/previousReleases.php">previous releases of Eclipse Memory Analyzer</a>
- but this has not been tested.
- </div>
-
- <div class="note note"><span class="notetitle">Note:</span>
- Because of the <a class="xref" href="https://wiki.eclipse.org/Eclipse/Installation/Java8Required">requirements of Eclipse Neon and later</a>, Java version 1.8 or later is required to run the RCP.
- <a class="xref" href="https://www.eclipse.org/mat/previousReleases.php">Previous releases of Eclipse Memory Analyzer</a>
- could run with Java 1.6, 1.7 and 1.8.
- </div>
-
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=317289">317289</a> Extract information from Exception objects in the heap dumps
</li>
- <li class="li">Memory Analyzer can now work with Java virtual machines, version 9 and version 10,
- as well as 1.8. Dumps from JVMs versions 1.5, 1.6 and 1.7 are still handled.
- Memory Analyzer has been tested with JVMs of the
- following types:
- <ul class="ul">
- <li class="li">Oracle JVMs</li>
-
- <li class="li">OpenJDK JVMs</li>
-
- <li class="li">IBM JVMs</li>
-
- <li class="li">OpenJ9 JVMs</li>
-
- </ul>
-
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=380600">380600</a> Resave Heap Dump without Unreachable Objects
</li>
- <li class="li">Fixes for new Java 9 string format</li>
-
- <li class="li">Acquire heap dumps - various improvements:
- <ul class="ul">
- <li class="li">Attach API provider now works using <samp class="ph codeph">com.sun.tools.attach</samp>
- allowing it to work with Oracle JVMs and IBM JVMs, version 1.8 SR5 and later.
- Earlier IBM JVMs continue to work using <samp class="ph codeph">com.ibm.tools.attach</samp></li>
-
- <li class="li">Sort columns of PID and provider</li>
-
- <li class="li">Resizing of columns with window</li>
-
- <li class="li">More help, including links to provider help</li>
-
- <li class="li">Processes unavailable for dumps marked in <em class="ph i">italics</em></li>
-
- <li class="li">Attach API provide can generate HPROF dumps for Oracle and OpenJDK JVMS
- using HotSpot MX bean.</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=519274">519274</a> Redacted Binary or PHD dump so as to protect privacy data
+ </li>
- <li class="li">Configure Heap Dump providers page jumps to appropriate provider when
- selected from a process.</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=538953">538953</a> Create an option for DTFJIndexBuilder to suppress native class sizes
+ </li>
- </ul>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=539750">539750</a> java.util.ConcurrentModificationException with Calculate precise retained size and sort
+ </li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541245">541245</a> Exceptions with result filtering
</li>
- <li class="li">Equinox Bundle Explorer now handles more recent Eclipse versions.</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541286">541286</a> Missing shallow heap size values in comparison tables
+ </li>
- <li class="li">More collections handled by collection queries, including collections from Java 9 and Java 10.</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=541539">541539</a> Simple batch mode comparison of two snapshots
+ </li>
- <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=520908">520908</a>: Invalid thread object in ThreadOverviewQuery causes whole query to fail</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=543045">543045</a> Eclipse MAT does not show complete actual heap size(Heap dump size) on overview tab.
+ </li>
- <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=521999">521999</a>: pString values not displayed analyzing some IBM core dumps</li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=537579">537579</a> ArrayIndexOutOfBoundsException in HashMapObjectLong.resize
+ </li>
+ <li class="li">Fix for <a class="xref" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=539751">539751</a> Unhandled event loop exception - InjectionException - WidgetMethodHandler is not handled for for command Command Copy
+ </li>
+
</ul>
</div>
- <div class="section"><h2 class="title sectiontitle">New and Noteworthy for Memory Analyzer 1.7</h2>
+ <div class="section"><h2 class="title sectiontitle">New and Noteworthy for Memory Analyzer 1.8</h2>
<p class="p">
- The New and Noteworthy document for version 1.7 is available
- <a class="xref" href="http://www.eclipse.org/mat/1.7.0/noteworthy.html">here</a>.
+ The New and Noteworthy document for version 1.8 is available
+ <a class="xref" href="http://www.eclipse.org/mat/1.8.0/noteworthy.html">here</a>.
</p>
</div>
diff --git a/plugins/org.eclipse.mat.ui.help/tasks/batch.dita b/plugins/org.eclipse.mat.ui.help/tasks/batch.dita
new file mode 100644
index 00000000..9f2fea71
--- /dev/null
+++ b/plugins/org.eclipse.mat.ui.help/tasks/batch.dita
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2019 IBM Corporation.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Andrew Johnson/IBM - initial API and implementation
+ -->
+<!DOCTYPE task PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd" >
+<task id="task_batch" xml:lang="en-us">
+ <title>Batch mode</title>
+ <prolog>
+ <copyright>
+ <copyryear year=""></copyryear>
+ <copyrholder>
+ Copyright (c) 2019 IBM Corporation.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+ </copyrholder>
+ </copyright>
+ </prolog>
+
+ <taskbody>
+ <context>
+ <p>Memory Analyzer can be operated in batch mode to process heap dumps
+ without user input.</p>
+ </context>
+ <steps>
+ <step>
+ <note>On Windows, use <keyword>.\mat\ParseHeapDump.bat</keyword> instead of <keyword>./mat/ParseHeapDump.sh</keyword></note>
+ <cmd>Run <cmdname>./mat/ParseHeapDump.sh</cmdname> <parmname>myheapdump.hprof</parmname> <parmname>org.eclipse.mat.api:suspects</parmname>
+ </cmd>
+ <choices>
+ <choice>For a simple suspects report use <parmname>org.eclipse.mat.api:suspects</parmname></choice>
+ <choice>For an overview report use <parmname>org.eclipse.mat.api:overview</parmname></choice>
+ <choice>For a report on memory usage by component use <parmname>org.eclipse.mat.api:top_components</parmname></choice>
+ <choice>To compare two heap dumps use<cmdname>./mat/ParseHeapDump.sh</cmdname> <parmname>myheapdump.hprof</parmname> <option>-snapshot2=</option><parmname>myheapdump2.hprof</parmname> <parmname>org.eclipse.mat.api:compare</parmname></choice>
+ </choices>
+ <stepresult>
+ <msgblock>
+Task: Parsing myheapdump.hprof
+[Task: Parsing .\Downloads\myheapdump.hprof
+[
+Subtask: Scanning .\Downloads\myheapdump.hprof
+[.................
+[INFO] Detected compressed references, because with uncompressed 64-bit references the array at 0x5c4bd4258 would overlap the array at 0x5c4bd4230
+[....................
+[INFO] Wrote threads call stacks to .\Downloads\myheapdump.threads
+[....................
+[INFO] Heap .\Downloads\myheapdump.hprof contains 116,716 objects
+[....................
+Subtask: Extracting objects from .\Downloads\myheapdump.hprof
+[...................................................................................Task: Removing unreachable objects
+[
+Subtask: Searching for unreachable objects
+[
+Subtask: Marking reachable objects
+[.
+Subtask: Re-indexing objects
+[..
+Subtask: Re-indexing classes
+[...
+Subtask: Writing .\Downloads\myheapdump.idx.index
+[....
+Subtask: Writing .\Downloads\myheapdump.o2c.index
+[.....
+Subtask: Writing .\Downloads\myheapdump.a2s.index
+[......
+Subtask: Re-indexing outbound index
+[.......
+Subtask: Writing .\Downloads\myheapdump.inbound.index
+[........
+Subtask: Writing .\Downloads\myheapdump.outbound.index
+[.........
+Subtask: Writing .\Downloads\myheapdump.o2hprof.index
+[.........Task: Calculating Dominator Tree
+[
+Subtask: Dominator Tree calculation
+[
+Subtask: Depth-first search
+[....................
+Subtask: Computing dominators
+[..............................................
+Subtask: Calculate retained sizes
+[............................................................
+Subtask: Create dominators index file
+[................................................................................]
+
+Subtask: Test 'Heap Dump Overview' of section 'System Overview'
+[
+Subtask: Test 'System Properties' of section 'System Overview'
+[
+Subtask: Extracting Key Value Pairs...
+[
+Subtask: Test 'Thread Overview' of section 'System Overview'
+[
+Subtask: Searching Threads...
+[
+Subtask: Test 'Top Consumers' of section 'System Overview'
+[
+Subtask: Creating histogram
+[
+Subtask: Grouping by package
+[
+Subtask: Test 'Biggest Objects (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Objects' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Classes (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Classes' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Class Loaders (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Class Loaders' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Packages' of section 'Top Consumers'
+[
+Subtask: Test 'Class Histogram' of section 'System Overview'
+[
+Subtask: Test 'Leaks' of section 'Leak Suspects'
+[
+Subtask: Finding problem suspects
+[
+Subtask: Searching suspicious single objects ...
+[
+Subtask: Searching suspicious groups of objects ...
+[
+Subtask: building histogram
+[
+Subtask: Preparing results
+[
+Subtask: building histogram
+[
+Subtask: building histogram
+[
+Subtask: Finding paths
+[
+Subtask: Test 'Overview' of section 'Leaks'
+[
+Subtask: Test 'Problem Suspect 1' of section 'Leaks'
+[
+Subtask: Test 'Description' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Shortest Paths To the Accumulation Point' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Shortest Paths To the Accumulation Point' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects by Class in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects by Class in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'All Accumulated Objects by Class' of section 'Problem Suspect 1'
+[
+Subtask: Test 'All Accumulated Objects by Class' of section 'Problem Suspect 1'
+[]
+ </msgblock>
+ </stepresult>
+ </step>
+ <step>
+ <cmd>
+ Unzip the report <parmname>myheapdump_Leak_Suspects.zip</parmname>
+ </cmd>
+ </step>
+ <step>
+ <cmd>
+ View the <parmname>index.html</parmname>
+ </cmd>
+ </step>
+ </steps>
+ <result>
+ <p>The result is a HTML report.</p>
+ </result>
+ </taskbody>
+</task> \ No newline at end of file
diff --git a/plugins/org.eclipse.mat.ui.help/tasks/batch.html b/plugins/org.eclipse.mat.ui.help/tasks/batch.html
new file mode 100644
index 00000000..bc8699ea
--- /dev/null
+++ b/plugins/org.eclipse.mat.ui.help/tasks/batch.html
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xml:lang="en-us" lang="en-us">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+<meta name="DC.Type" content="task"/>
+<meta name="DC.Title" content="Batch mode"/>
+<meta name="copyright" content="Copyright (c) 2019 IBM Corporation. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
+<meta name="DC.Rights.Owner" content="Copyright (c) 2019 IBM Corporation. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html " type="primary"/>
+<meta name="DC.Format" content="XHTML"/>
+<meta name="DC.Identifier" content="task_batch"/>
+<meta name="DC.Language" content="en-us"/>
+<link rel="stylesheet" type="text/css" href="../styles/commonltr.css"/>
+<title>Batch mode</title>
+</head>
+<body id="task_batch">
+
+
+ <h1 class="title topictitle1">Batch mode</h1>
+
+
+
+ <div class="body taskbody">
+ <div class="section context">
+ <p class="p">Memory Analyzer can be operated in batch mode to process heap dumps
+ without user input.</p>
+
+ </div>
+
+ <ol class="ol steps"><li class="li step stepexpand">
+ <div class="note note"><span class="notetitle">Note:</span> On Windows, use <span class="keyword">.\mat\ParseHeapDump.bat</span> instead of <span class="keyword">./mat/ParseHeapDump.sh</span></div>
+
+ <span class="ph cmd">Run <span class="keyword cmdname">./mat/ParseHeapDump.sh</span> <span class="keyword parmname">myheapdump.hprof</span> <span class="keyword parmname">org.eclipse.mat.api:suspects</span>
+ </span>
+ <ul class="ul choices">
+ <li class="li choice">For a simple suspects report use <span class="keyword parmname">org.eclipse.mat.api:suspects</span></li>
+
+ <li class="li choice">For an overview report use <span class="keyword parmname">org.eclipse.mat.api:overview</span></li>
+
+ <li class="li choice">For a report on memory usage by component use <span class="keyword parmname">org.eclipse.mat.api:top_components</span></li>
+
+ <li class="li choice">To compare two heap dumps use<span class="keyword cmdname">./mat/ParseHeapDump.sh</span> <span class="keyword parmname">myheapdump.hprof</span> <span class="keyword option">-snapshot2=</span><span class="keyword parmname">myheapdump2.hprof</span> <span class="keyword parmname">org.eclipse.mat.api:compare</span></li>
+
+ </ul>
+
+ <div class="itemgroup stepresult">
+ <pre class="pre msgblock">
+Task: Parsing myheapdump.hprof
+[Task: Parsing .\Downloads\myheapdump.hprof
+[
+Subtask: Scanning .\Downloads\myheapdump.hprof
+[.................
+[INFO] Detected compressed references, because with uncompressed 64-bit references the array at 0x5c4bd4258 would overlap the array at 0x5c4bd4230
+[....................
+[INFO] Wrote threads call stacks to .\Downloads\myheapdump.threads
+[....................
+[INFO] Heap .\Downloads\myheapdump.hprof contains 116,716 objects
+[....................
+Subtask: Extracting objects from .\Downloads\myheapdump.hprof
+[...................................................................................Task: Removing unreachable objects
+[
+Subtask: Searching for unreachable objects
+[
+Subtask: Marking reachable objects
+[.
+Subtask: Re-indexing objects
+[..
+Subtask: Re-indexing classes
+[...
+Subtask: Writing .\Downloads\myheapdump.idx.index
+[....
+Subtask: Writing .\Downloads\myheapdump.o2c.index
+[.....
+Subtask: Writing .\Downloads\myheapdump.a2s.index
+[......
+Subtask: Re-indexing outbound index
+[.......
+Subtask: Writing .\Downloads\myheapdump.inbound.index
+[........
+Subtask: Writing .\Downloads\myheapdump.outbound.index
+[.........
+Subtask: Writing .\Downloads\myheapdump.o2hprof.index
+[.........Task: Calculating Dominator Tree
+[
+Subtask: Dominator Tree calculation
+[
+Subtask: Depth-first search
+[....................
+Subtask: Computing dominators
+[..............................................
+Subtask: Calculate retained sizes
+[............................................................
+Subtask: Create dominators index file
+[................................................................................]
+
+Subtask: Test 'Heap Dump Overview' of section 'System Overview'
+[
+Subtask: Test 'System Properties' of section 'System Overview'
+[
+Subtask: Extracting Key Value Pairs...
+[
+Subtask: Test 'Thread Overview' of section 'System Overview'
+[
+Subtask: Searching Threads...
+[
+Subtask: Test 'Top Consumers' of section 'System Overview'
+[
+Subtask: Creating histogram
+[
+Subtask: Grouping by package
+[
+Subtask: Test 'Biggest Objects (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Objects' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Classes (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Classes' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Class Loaders (Overview)' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Class Loaders' of section 'Top Consumers'
+[
+Subtask: Test 'Biggest Top-Level Dominator Packages' of section 'Top Consumers'
+[
+Subtask: Test 'Class Histogram' of section 'System Overview'
+[
+Subtask: Test 'Leaks' of section 'Leak Suspects'
+[
+Subtask: Finding problem suspects
+[
+Subtask: Searching suspicious single objects ...
+[
+Subtask: Searching suspicious groups of objects ...
+[
+Subtask: building histogram
+[
+Subtask: Preparing results
+[
+Subtask: building histogram
+[
+Subtask: building histogram
+[
+Subtask: Finding paths
+[
+Subtask: Test 'Overview' of section 'Leaks'
+[
+Subtask: Test 'Problem Suspect 1' of section 'Leaks'
+[
+Subtask: Test 'Description' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Shortest Paths To the Accumulation Point' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Shortest Paths To the Accumulation Point' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects by Class in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'Accumulated Objects by Class in Dominator Tree' of section 'Problem Suspect 1'
+[
+Subtask: Test 'All Accumulated Objects by Class' of section 'Problem Suspect 1'
+[
+Subtask: Test 'All Accumulated Objects by Class' of section 'Problem Suspect 1'
+[]
+ </pre>
+
+ </div>
+ </li>
+<li class="li step stepexpand">
+ <span class="ph cmd">
+ Unzip the report <span class="keyword parmname">myheapdump_Leak_Suspects.zip</span>
+ </span>
+ </li>
+<li class="li step stepexpand">
+ <span class="ph cmd">
+ View the <span class="keyword parmname">index.html</span>
+ </span>
+ </li>
+</ol>
+
+ <div class="section result">
+ <p class="p">The result is a HTML report.</p>
+
+ </div>
+
+ </div>
+
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/org.eclipse.mat.ui.help/toc.ditamap b/plugins/org.eclipse.mat.ui.help/toc.ditamap
index 83c6338f..73fad68e 100644
--- a/plugins/org.eclipse.mat.ui.help/toc.ditamap
+++ b/plugins/org.eclipse.mat.ui.help/toc.ditamap
@@ -27,7 +27,8 @@
<topicref href="tasks/bundleregistry.dita" type="task" />
<topicref href="tasks/comparingdata.dita" type="task" />
<topicref href="tasks/exportdata.dita" type="task" />
- <topicref href="tasks/exportdump.dita" type="task" />
+ <topicref href="tasks/exportdump.dita" type="task" />
+ <topicref href="tasks/batch.dita" type="task" />
<topicref href="tasks/configure_mat.dita" type="task" />
</topichead>
<topichead navtitle="Reference">
diff --git a/plugins/org.eclipse.mat.ui.help/toc.xml b/plugins/org.eclipse.mat.ui.help/toc.xml
index d1fe9882..b6d9653e 100644
--- a/plugins/org.eclipse.mat.ui.help/toc.xml
+++ b/plugins/org.eclipse.mat.ui.help/toc.xml
@@ -1,3 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<?NLS TYPE="org.eclipse.help.toc"?>
-<toc label="Memory Analyzer" topic="welcome.html"><topic label="Introduction" href="welcome.html"/><topic label="Getting Started"><topic label="Basic Tutorial" href="gettingstarted/basictutorial.html"/></topic><topic label="Concepts"><topic label="Heap Dump" href="concepts/heapdump.html"/><topic label="Reachability" href="concepts/reachability.html"/><topic label="Shallow vs. Retained Heap" href="concepts/shallowretainedheap.html"/><topic label="Dominator Tree" href="concepts/dominatortree.html"/><topic label="Garbage Collection Roots" href="concepts/gcroots.html"/></topic><topic label="Tasks"><topic label="Acquiring Heap Dumps" href="tasks/acquiringheapdump.html"/><topic label="Installing IBM DTFJ feature for IBM dumps" href="tasks/installDTFJ.html"/><topic label="Running Leak Suspect Report" href="tasks/runningleaksuspectreport.html"/><topic label="List the Biggest Objects" href="tasks/listbiggestobjects.html"/><topic label="Finding Responsible Objects" href="tasks/findingresponsibleobjects.html"/><topic label="Querying Heap Objects (OQL)" href="tasks/queryingheapobjects.html"/><topic label="Analyze Class Loader" href="tasks/analyzingclassloader.html"/><topic label="Analyzing Threads" href="tasks/analyzingthreads.html"/><topic label="Analyzing Java Collection Usage" href="tasks/analyzingjavacollectionusage.html"/><topic label="Analyzing Finalizer" href="tasks/analyzingfinalizer.html"/><topic label="Eclipse Equinox Bundle Registry" href="tasks/bundleregistry.html"/><topic label="Comparing Objects" href="tasks/comparingdata.html"/><topic label="Export Data" href="tasks/exportdata.html"/><topic label="Export Heap Dump" href="tasks/exportdump.html"/><topic label="Memory Analyzer Configuration" href="tasks/configure_mat.html"/></topic><topic label="Reference"><topic label="Inspections"><topic label="Leak Identification"><topic label="Component Report" href="reference/inspections/component_report.html"/></topic><topic label="Immediate Dominators" href="reference/inspections/immediate_dominators.html"/><topic label="Group by Value" href="reference/inspections/group_by_value.html"/><topic label="Path to GC Roots" href="reference/inspections/path_to_gc_roots.html"/><topic label="Retained Set" href="reference/inspections/retained_set.html"/><topic label="Top Consumers" href="reference/inspections/top_consumers.html"/><topic label="Unreachable objects" href="reference/inspections/unreachable_objects.html"/></topic><topic label="Query Matrix" href="reference/querymatrix.html"><topic label="Finding Memory Leak" href="reference/findingmemoryleak.html"/><topic label="Analyzing Memory Consumption" href="reference/analyzingmemoryconsumption.html"/></topic><topic label="OQL Syntax" href="reference/oqlsyntax.html"><topic label="SELECT Clause" href="reference/oqlsyntaxselect.html"/><topic label="FROM Clause" href="reference/oqlsyntaxfrom.html"/><topic label="WHERE Clause" href="reference/oqlsyntaxwhere.html"/><topic label="Property Accessors" href="reference/propertyaccessors.html"/><topic label="BNF for the Object Query Language" href="reference/bnfofoql.html"/></topic><topic label="Selecting Queries" href="reference/selectingqueries.html"/><topic label="Icons Assist" href="reference/iconassist.html"/><topic label="Tips and Tricks" href="reference/tipsandtricks.html"/><topic label="Extending Memory Analyzer" href="reference/extendingmat.html"/><topic label="API Reference" href="doc/index.html"/></topic><topic label="New and Noteworthy" href="noteworthy.html"/><topic label="Legal" href="legal.html"/></toc> \ No newline at end of file
+<toc label="Memory Analyzer" topic="welcome.html"><topic label="Introduction" href="welcome.html"/><topic label="Getting Started"><topic label="Basic Tutorial" href="gettingstarted/basictutorial.html"/></topic><topic label="Concepts"><topic label="Heap Dump" href="concepts/heapdump.html"/><topic label="Reachability" href="concepts/reachability.html"/><topic label="Shallow vs. Retained Heap" href="concepts/shallowretainedheap.html"/><topic label="Dominator Tree" href="concepts/dominatortree.html"/><topic label="Garbage Collection Roots" href="concepts/gcroots.html"/></topic><topic label="Tasks"><topic label="Acquiring Heap Dumps" href="tasks/acquiringheapdump.html"/><topic label="Installing IBM DTFJ feature for IBM dumps" href="tasks/installDTFJ.html"/><topic label="Running Leak Suspect Report" href="tasks/runningleaksuspectreport.html"/><topic label="List the Biggest Objects" href="tasks/listbiggestobjects.html"/><topic label="Finding Responsible Objects" href="tasks/findingresponsibleobjects.html"/><topic label="Querying Heap Objects (OQL)" href="tasks/queryingheapobjects.html"/><topic label="Analyze Class Loader" href="tasks/analyzingclassloader.html"/><topic label="Analyzing Threads" href="tasks/analyzingthreads.html"/><topic label="Analyzing Java Collection Usage" href="tasks/analyzingjavacollectionusage.html"/><topic label="Analyzing Finalizer" href="tasks/analyzingfinalizer.html"/><topic label="Eclipse Equinox Bundle Registry" href="tasks/bundleregistry.html"/><topic label="Comparing Objects" href="tasks/comparingdata.html"/><topic label="Export Data" href="tasks/exportdata.html"/><topic label="Export Heap Dump" href="tasks/exportdump.html"/><topic label="Batch mode" href="tasks/batch.html"/><topic label="Memory Analyzer Configuration" href="tasks/configure_mat.html"/></topic><topic label="Reference"><topic label="Inspections"><topic label="Leak Identification"><topic label="Component Report" href="reference/inspections/component_report.html"/></topic><topic label="Immediate Dominators" href="reference/inspections/immediate_dominators.html"/><topic label="Group by Value" href="reference/inspections/group_by_value.html"/><topic label="Path to GC Roots" href="reference/inspections/path_to_gc_roots.html"/><topic label="Retained Set" href="reference/inspections/retained_set.html"/><topic label="Top Consumers" href="reference/inspections/top_consumers.html"/><topic label="Unreachable objects" href="reference/inspections/unreachable_objects.html"/></topic><topic label="Query Matrix" href="reference/querymatrix.html"><topic label="Finding Memory Leak" href="reference/findingmemoryleak.html"/><topic label="Analyzing Memory Consumption" href="reference/analyzingmemoryconsumption.html"/></topic><topic label="OQL Syntax" href="reference/oqlsyntax.html"><topic label="SELECT Clause" href="reference/oqlsyntaxselect.html"/><topic label="FROM Clause" href="reference/oqlsyntaxfrom.html"/><topic label="WHERE Clause" href="reference/oqlsyntaxwhere.html"/><topic label="Property Accessors" href="reference/propertyaccessors.html"/><topic label="BNF for the Object Query Language" href="reference/bnfofoql.html"/></topic><topic label="Selecting Queries" href="reference/selectingqueries.html"/><topic label="Icons Assist" href="reference/iconassist.html"/><topic label="Tips and Tricks" href="reference/tipsandtricks.html"/><topic label="Extending Memory Analyzer" href="reference/extendingmat.html"/><topic label="API Reference" href="doc/index.html"/></topic><topic label="New and Noteworthy" href="noteworthy.html"/><topic label="Legal" href="legal.html"/></toc> \ No newline at end of file
diff --git a/plugins/org.eclipse.mat.ui.help/welcome.dita b/plugins/org.eclipse.mat.ui.help/welcome.dita
index 192bd0cb..20027abc 100644
--- a/plugins/org.eclipse.mat.ui.help/welcome.dita
+++ b/plugins/org.eclipse.mat.ui.help/welcome.dita
@@ -73,6 +73,7 @@
<p><xref href="tasks/comparingdata.dita" /></p>
<p><xref href="tasks/exportdata.dita" /></p>
<p><xref href="tasks/exportdump.dita" /></p>
+ <p><xref href="tasks/batch.dita" /></p>
<p><xref href="tasks/configure_mat.dita" /></p>
</section>
diff --git a/plugins/org.eclipse.mat.ui.help/welcome.html b/plugins/org.eclipse.mat.ui.help/welcome.html
index 3fb78863..85893b12 100644
--- a/plugins/org.eclipse.mat.ui.help/welcome.html
+++ b/plugins/org.eclipse.mat.ui.help/welcome.html
@@ -91,6 +91,8 @@
<p class="p"><a class="xref" href="tasks/exportdump.html">Export Heap Dump</a></p>
+ <p class="p"><a class="xref" href="tasks/batch.html">Batch mode</a></p>
+
<p class="p"><a class="xref" href="tasks/configure_mat.html">Memory Analyzer Configuration</a></p>
</div>

Back to the top