java.lang.Object

Terracotta Project Issue Tracker | Zach Bailey | 7 years ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    Terracotta 3.1 tim-quartz-1.6.1 1.2.0 Quartz 1.6.1 Tomcat 6.0.14 When attempting a clean shut down of tomcat (tomcat/bin/catalina.sh stop), the tomcat process does not exit cleanly when running in a TC clustered environment. Waiting 2 minutes and then taking a thread dump of the still-running tomcat JVM shows the following non-daemon user threads: "Thread-257" prio=10 tid=0x000000004167c000 nid=0x7667 in Object.wait() [0x00007fbaf1e3f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:485) at com.tc.object.lockmanager.impl.ClientLock.waitForLock(ClientLock.java:675) locked <0x00007fbbbd418f68> (a java.lang.Object) at com.tc.object.lockmanager.impl.ClientLock.basicLock(ClientLock.java:245) at com.tc.object.lockmanager.impl.ClientLock.lock(ClientLock.java:136) at com.tc.object.lockmanager.impl.ClientLock.lock(ClientLock.java:123) at com.tc.object.lockmanager.impl.ClientLockManagerImpl.lock(ClientLockManagerImpl.java:391) at com.tc.object.lockmanager.impl.StripedClientLockManagerImpl.lock(StripedClientLockManagerImpl.java:114) at com.tc.object.lockmanager.impl.ThreadLockManagerImpl.lock(ThreadLockManagerImpl.java:46) at com.tc.object.tx.ClientTransactionManagerImpl.begin(ClientTransactionManagerImpl.java:231) at com.tc.object.bytecode.ManagerImpl.begin(ManagerImpl.java:367) at com.tc.object.bytecode.ManagerImpl.monitorEnter(ManagerImpl.java:547) at com.tc.object.bytecode.ManagerUtil.monitorEnter(ManagerUtil.java:557) at org.quartz.core.RecoveryThread$FailThread.run(QuartzSchedulerThreadTC.java:160) "Thread-84" prio=10 tid=0x00007fbb0cec6000 nid=0x41f5 in Object.wait() [0x00007fbb03a61000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:485) at com.tc.object.lockmanager.impl.ClientLock.waitForLock(ClientLock.java:675) locked <0x00007fbb64cc6360> (a java.util.LinkedHashMap) at com.tc.object.lockmanager.impl.ClientLock.wait(ClientLock.java:395) at com.tc.object.lockmanager.impl.ClientLockManagerImpl.wait(ClientLockManagerImpl.java:477) at com.tc.object.lockmanager.impl.StripedClientLockManagerImpl.wait(StripedClientLockManagerImpl.java:171) at com.tc.object.lockmanager.impl.ThreadLockManagerImpl.wait(ThreadLockManagerImpl.java:58) at com.tc.object.tx.ClientTransactionManagerImpl.wait(ClientTransactionManagerImpl.java:272) at com.tc.object.bytecode.ManagerImpl.objectWait(ManagerImpl.java:457) at com.tc.object.bytecode.ManagerUtil.objectWait(ManagerUtil.java:515) at org.quartz.core.RecoveryThread.run(QuartzSchedulerThreadTC.java:133) locked <0x00007fbb64cc6360> (a java.util.LinkedHashMap) locked <0x00007fbb64cc6528> (a java.lang.Object) There are two problems with this: # The threads are non-daemon and are not paying attention to the local JVM lifecycle, they should shut down when the JVM is being terminated. # The threads are not named appropriately. This could aid in debugging/etc so you don't have to dig through the stack trace to see what the thread is. I know you guys are probably doing a lot of changes internally to quartz and the TC/quartz integration. Just wanted to make sure this was checked off this list as work was being done. Thanks!

    Terracotta Project Issue Tracker | 7 years ago | Zach Bailey
    java.lang.Object

    Root Cause Analysis

    1. java.lang.Object

      No message provided

      at com.tc.object.lockmanager.impl.ClientLock.basicLock()
    2. com.tc.object
      ManagerUtil.monitorEnter
      1. com.tc.object.lockmanager.impl.ClientLock.basicLock(ClientLock.java:245)
      2. com.tc.object.lockmanager.impl.ClientLock.lock(ClientLock.java:136)
      3. com.tc.object.lockmanager.impl.ClientLock.lock(ClientLock.java:123)
      4. com.tc.object.lockmanager.impl.ClientLockManagerImpl.lock(ClientLockManagerImpl.java:391)
      5. com.tc.object.lockmanager.impl.StripedClientLockManagerImpl.lock(StripedClientLockManagerImpl.java:114)
      6. com.tc.object.lockmanager.impl.ThreadLockManagerImpl.lock(ThreadLockManagerImpl.java:46)
      7. com.tc.object.tx.ClientTransactionManagerImpl.begin(ClientTransactionManagerImpl.java:231)
      8. com.tc.object.bytecode.ManagerImpl.begin(ManagerImpl.java:367)
      9. com.tc.object.bytecode.ManagerImpl.monitorEnter(ManagerImpl.java:547)
      10. com.tc.object.bytecode.ManagerUtil.monitorEnter(ManagerUtil.java:557)
      10 frames
    3. quartz
      RecoveryThread$FailThread.run
      1. org.quartz.core.RecoveryThread$FailThread.run(QuartzSchedulerThreadTC.java:160)
      1 frame