Details
-
Bug
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
None
-
None
-
None
-
ghx-label-5
Description
JvmPauseMonitor.checkForDeadlocks() will dump the stacktrace of threads. However, it uses Thread.toString() which will only dump 8 frames at most. Stacktrace deeper than that will be truncated, e.g.
E0929 10:48:46.454406 107191 JvmPauseMonitor.java:247] "pool-84-thread-1" Id=20257 RUNNABLE at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111) at java.net.SocketOutputStream.write(SocketOutputStream.java:155) at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:431) at sun.security.ssl.OutputRecord.write(OutputRecord.java:417) at sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:879) at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:850) at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123) - locked sun.security.ssl.AppOutputStream@549d1947 ... Number of locked synchronizers = 1 - java.util.concurrent.locks.ReentrantLock$NonfairSync@336dd2b1
We can use the same code we added for IMPALA-5392 to dump the full stacktrace.