both message to the log are only informational. The first message tells
the number of objects during found during parsing, the second means that
the leak suspect report utilizes sampling.
What does the Memory Analyzer do? Well, it removes the objects which are
not reachable. Usually, those comprise only a minor percentage and are
leftovers of optimization done by the Garbage Collector.
You have two possibilities (described in a little more detail on the FAQ
page): Either look at the histogram of unreachable objects or (during the
initial parsing) let MAT mark those objects as pseudo GC roots and
therefore prevent their removal.
What is the number of objects removed versus the number of objects kept
alive in your heap dump? The first one you find via "Java Basics" ->
"Unreachable Histogram", the second one is the total in of objects in the
default histogram.