Search code examples
javajvmstatjinfo

jinfo crashed the JVM occasionally


Accidentally I found the stat of one Java process is T(Stopped, either by a job control signal or because it is being traced). I think it may be related to jinfo because I ran this command at that time. Then I try to run jinfo again and the process crashed agagin. But it's not easy to reproduce.

Does anyone have the idea of why the stat of process became T without kill -SIGSTOP? Does jinfo have bug which may crash the process?

EDIT: I have 100% reproduced this issue when jinfo the process which has ran over 60 days. The bug seems to be triggered if the process has ran for a long time. It doesn't work for the new processes.

OMG, jmap has the same issue and it's also 100% reproduced. But not for jstack. Now I'm so sure it's something about detecting jvm.

$ java -version
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01, mixed mode)


Solution

  • It's the bug of JDK 1.6.0 or ptrace with kernel 2.6.32. I will test for different versions.