Skip to Content
This guide briefly covers how to generate a heap dump from SUP using jmap:
Creating a Heap Dump (jmap)
Many people have generated a Heap Dump by sending the Ctrl-Break Signal to a java process on POSIX-Systems before.
However, Unwired Server runs on Windows, which does not include the signal commands.
This means you have to use special tools to communicate with the Java VM directly. There are a number of options to do this, including jconsole and jvisualvm.

The easiest I found is using  the ‘jmap’ tool as below:

  • On an remote desktop connection, you need an Administration console, either
    by connecting to the machine console by using mstsc <hostname>
    /admin or by “Starting as Administrator” a command window “cmd.exe”.
  • Use psexec -s from sysinternals suite to execute the tool because the
    process runs as a service and only the system user is allowed to connect
  • jmap is found in the directory %JDK_HOME%\bin

psexec -s jmap -dump:format=b,file=<file name in absolute path> <PID of mlsrv12.exe> 

Analyzing a Heap Dump
Java heap dumps from Oracle and SAP VMs are usually generated in ‘hprof’ format.
The best tool to analyse the dump is the Eclipse Memory Analyser, available from:
http://www.eclipse.org/mat/downloads.php

It can automatically generate a leak suspect report or let the user drill down through the various hashtables.

–Stephen
To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply