How to change a maximum row length limit of 1024 symbols in Eclipse Memory Analyzer (MAT)?

61 Views Asked by At

I'm getting used to using Eclipse Memory Analyzer for parsing java heap dump files. So basicly my command looks like: ParseHeapDump.sh /path/to/file.hprof "-command=oql <any oql query>" -format=txt org.eclipse.mat.api:query

In the output result I see that every row which is longer then 1024 symbols has been cut down. I could not find any command line options or any configuration parameters which could change this behavior.

Then I found out this parameter which could be responsible for the limit of row length and built my own version of MAT but it changed nothing.

So, does anyone know how to solve this problem or any parameters which are responsible for the limit of row length?

Thank you in advance!

1

There are 1 best solutions below

0
user13762112 On

I think the line you indicated just control java.lang.String lengths, or other resolvers which convert the value of an object which has a String as part of the name.

There are other limits in that file which control the formatting of other types.

I tried with a resolver which doesn't have a length limit (from a snapshot build of MAT, not in version 1.14.0)

ParseHeapDump.bat java_pid14976.0001.hprof "-command=oql ""SELECT toString(b) FROM java.math.BigInteger b WHERE (toString(b).length() > 1024)""" -format=txt org.eclipse.mat.api:query

and that produced wide columns.