I was monitoring my JVM running Apache Tomcat 6, running on Windows, and I noticed that every 3 seconds or so the JVM process (C:\Tomcat\bin\tomcat6.exe) is polling to see whether or not
C:\Tomcatcat\java_pid3748.hprof
exists, where 3748 is the Windows process ID.
I haven't seen write to the hprof file, just test for existence.
(I'm using Sysinternals Process Monitor (procmon.exe) for this monitoring. In procmon the polling shows up as a QueryDirectory operation, which always returns Result "NO SUCH FILE".)
Is this normal, or is this a potential red flag? I gather that these hprof files are generated, perhaps among other times, when you enable the
-XX:+HeapDumpOnOutOfMemoryError
Java flag. I haven't enabled it myself, though I guess it could be enabled somehow in the Tomcat startup scripts.
hprof
files are not just for heap dump. Which is your JVM process command line? (you can check it with Process Explorer).