JIRA 7.6.X Only One Node Will Start in Cluster

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

This article applies to to Jira Data Center documentation and is not relevant for a standard JIRA installation.

Problem

After successfully starting one node in the Cluster, Node 2 fails to startup with the following stack trace in atlassian-jira.log

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 localhost-startStop-1 ERROR [c.a.jira.upgrade.PluginSystemLauncher] A fatal error occured during initialisation. JIRA has been locked. com.atlassian.jira.InfrastructureException: Error occurred while starting Plugin Manager. Unable to resolve component: interface com.atlassian.plugin.SplitStartupPluginSystemLifecycle ... at com.atlassian.jira.cluster.distribution.JiraCacheManagerPeerProvider.lambda$wrapCachePeer$4(JiraCacheManagerPeerProvider.java:112) Caused by: java.rmi.NoSuchObjectException: no such object in table at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:276) at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:253) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:162) at net.sf.ehcache.distribution.RMICachePeer_Stub.getName(Unknown Source)

Diagnosis

Environment

  • Mulit-node cluster JIRA Data Center

Cause

There is most likely something in the setenv.sh that is setting the hostname to something that isn't resolvable outside the node

example:

1 -Djava.rmi.server.hostname=localhost

⚠️-Djava.rmi.server.hostname sets the hostname the JVM will use for RMI operations, and it overrides the setting ehcache.listener.hostName. However, JIRA will still detect its hostname during startup and store it on the database table clusternode; this discovery process does not take the value of -Djava.rmi.server.hostname in consideration. Make sure the value of -Djava.rmi.server.hostname matches the value of ip in the database table clusternode, or that ehcache.listener.hostName in JIRA_LOCAL_HOME/cluster.properties matches the value of -Djava.rmi.server.hostname. Failure to do so might result in failed cluster cache replication.

Solution

Resolution

Remove the offending input or set it to the machine's IP address or the hostname:

-Djava.rmi.server.hostname=xxx.xxx.xxx

So you must either remove the -Djava.rmi.server.hostname= or set it to something resolvable.

⚠️ JIRA must be restarted for this change to take effect.

Updated on April 2, 2025

Still need help?

The Atlassian Community is here for you.