Deadlock detected on startup error in logfile

Still need help?

The Atlassian Community is here for you.

Ask the community

Symptoms

JIRA fails to start up.

The following appears in the atlassian-jira.log:

2014-06-24 14:57:59,907 DeadLockDetection:thread-1 ERROR      [atlassian.jira.startup.LauncherContextListener] A deadlock has been detected on JIRA startup for the following threads: ["pool-1-thread-1" Id=94 WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@79faee0c owned by "localhost-startStop-1" Id=13, "localhost-startStop-1" Id=13 WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@49229464 owned by "pool-1-thread-1" Id=94]
2014-06-24 14:57:59,907 DeadLockDetection:thread-1 ERROR      [atlassian.jira.startup.LauncherContextListener] "pool-1-thread-1" Id=94 WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@79faee0c owned by "localhost-startStop-1" Id=13
at sun.misc.Unsafe.park(Native Method)
-  waiting on java.util.concurrent.locks.ReentrantLock$NonfairSync@79faee0c
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
at com.atlassian.jira.startup.ActiveServicesLauncher$1.run(ActiveServicesLauncher.java:58)
...:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
com.atlassian.jira.startup.ActiveServicesLauncher$1.run(ActiveServicesLauncher.java:58)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
java.util.concurrent.FutureTask.run(FutureTask.java:262)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:744)
2014-06-24 14:57:59,908 DeadLockDetection:thread-1 ERROR      [atlassian.jira.startup.LauncherContextListener] "localhost-startStop-1" Id=13 WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@49229464 owned by "pool-1-thread-1" Id=94
at sun.misc.Unsafe.park(Native Method)
-  waiting on java.util.concurrent.locks.ReentrantLock$NonfairSync@49229464
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
at com.atlassian.jira.startup.ActiveServicesLauncher.start(ActiveServicesLauncher.java:76)
...:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
com.atlassian.jira.startup.ActiveServicesLauncher.start(ActiveServicesLauncher.java:76)
com.atlassian.jira.startup.DefaultJiraLauncher$3.run(DefaultJiraLauncher.java:133)
com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:324)
com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:214)
com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:115)
com.atlassian.jira.startup.DefaultJiraLauncher.access$100(DefaultJiraLauncher.java:31)
com.atlassian.jira.startup.DefaultJiraLauncher$1.run(DefaultJiraLauncher.java:78)
com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:34)
com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:73)
com.atlassian.jira.startup.LauncherContextListener.contextInitialized(LauncherContextListener.java:68)
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
java.util.concurrent.FutureTask.run(FutureTask.java:262)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:744)

Diagnosis

This can happen during JIRA's startup, and not consistently.

Cause

The message is logged anytime a deadlock is detected during JIRA's startup.

There are different factors that might cause a deadlock when JIRA is starting up:

  • There is a bug existing on the Java JDK 7 that is the root cause of some deadlocks, see http://bugs.java.com/view_bug.do?bug_id=8044572 for more details.
  • One of the plugins that your JIRA instance has installed is badly written, and has a bug causing a deadlock.

Resolution

There are two options to avoid having this problem at the moment:

  • Restart JIRA
  • If you are using JIRA 6.3 or higher, upgrade your Java JDK to JDK8, since that version does not contain the bug that causes this issue. 6.3 is the first version of JIRA that supports Java 8 so DO NOT upgrade your JDK if you are using an older version of JIRA.

Last modified on Feb 19, 2016

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.