When working on a webapp in Eclipse and Tomcat (wtp) , tomcat crashes and create a file: hs_err_pid20216.log
I tried to use eclipse MAT to analyse the file but MAT doesn’t recognize the file as something it can handle, I tried also DAT and it was the same thing. It won’t show in the open file dialog.
What kind of file is it?
What should I use to analyze it?
Do I have to make changes to this file so that it will be possible for these tools to parse it.
The log file is available as a GitHub gist
UPDATE:
See @Dan Cruz reply for more information on how to deal with hs_err_pidXYZ.log file. For curious, the cause of the crash was Jackson being confused by a cyclic relationship (bidirectional one-to-many) but this is another story…
It’s a HotSpot error log file in text format.
Start by downloading the OpenJDK 6 source bundle. Search through the hotspot
*.cppfiles for strings in the error log. Review the source files for an explanation of what the error log contains.For example, using OpenJDK 7 sources, you can find
siginfo(the operating system process signal information) in theos::print_siginfo()method ofos_linux.cpp,Registers(the CPU registers’ values) in theos::print_context()method ofos_linux_x86.cpp, etc.That would be impossible since the Eclipse Memory Analyzer requires a heap file, which the HotSpot error log is not.