-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Highest
-
None
-
Affects Version/s: 11.3.10
-
Component/s: Data Center - Other
-
None
-
11.03
-
7
-
Severity 3 - Minor
-
5
Issue Summary
Jira Data Center instances on 11.3.10 are experiencing a deadlock during startup that prevents Jira from completing initialization. The deadlock is detected by the built-in DeadlockDetection thread and logged, but Jira never recovers, requiring manual restart (often multiple attempts).
Steps to Reproduce
A consistently reliable reproduction is not yet available. A possible reproduction pattern is:
- Install or upgrade Jira DC 11.3.10 with a non-trivial number of plugins (>20)
- Have index replication pending (e.g., node was down and needs to catch up)
- Start Jira
- Observe deadlock detection in atlassian-jira.log
Expected Results
Jira starts up successfully. Plugin enable events invalidate the fields cache and mark the index schema as stale without contention. The index replication queue rebuilds the schema on next access independently, without blocking startup.
Actual Results
Jira hangs indefinitely on startup due to a deadlock between the main thread (plugin startup → cache invalidation path) and ISSUE-indexQueue:thread-1 (index replication → schema rebuild path). The DeadlockDetection thread logs the deadlock but Jira never recovers. Multiple manual restarts are required, with no guarantee of success.
The below exception is thrown in the xxxxxxx.log file:
026-08-24 09:49:01,692+0000 DeadlockDetection:thread-1 ERROR [c.a.jira.startup.LauncherContextListener] A deadlock has been detected on Jira startup for the following threads: ["main" prio=5 Id=1 BLOCKED on java.lang.Object@13cf168b owned by "ISSUE-indexQueue:thread-1" Id=900, "ISSUE-indexQueue:thread-1" prio=10 Id=900 WAITING on java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync@6043227d owned by "main" Id=1]
Workaround
Enabling the dark feature com.atlassian.jira.plugin.event.field.refresh significantly reduces the risk of this behaviour.
If Jira is running, you can enable the feature through the Jira UI. Enter com.atlassian.jira.plugin.event.field.refresh.enabled as the dark-feature key.
If Jira is not running, you can set the JVM argument -Datlassian.darkfeature.com.atlassian.jira.plugin.event.field.refresh.enabled=true. After Jira starts, we recommend enabling com.atlassian.jira.plugin.event.field.refresh.enabled through the UI, so that this flag is persisted in the database and consistent between nodes in your cluster.
- mentioned in
-
Page Loading...