Synchrony Fails To Start Due To Missing Permissions In The Java Directory

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

Problem

Confluence startup does not not start synchrony process correctly. The synchrony JVM is not running on the system.

In addition to the above, the Atlassian synchrony logs are empty.

Diagnosis

To diagnose this issue, we must enable some debug logging in Confluence to confirm that the application is attempting to start synchrony:

Go to the Plugins UI and check if the system plugins related to Synchrony are enabled.

  • Confluence Collaborative Editor Plugin

  • Synchrony Interop Bootstrap Plugin

Attempting to restart Synchrony again will trigger the Synchrony startup. We will see the following messages in Confluence logs:

1 2 3 DEBUG [synchrony-interop-executor:thread-2] [plugins.synchrony.bootstrap.DefaultSynchronyProcessManager] lambda$startProcess$1 starting up Synchrony with command [/opt/oracle-jdk-8u202/jre/bin/java, -classpath, /opt/atlassian/confluence/temp/2.1.0-master-9d112c9d.jar:/opt/atlassian/confluence-6.15.4/confluence/WEB-INF/lib/postgresql-42.1.1.jar, -Xss2048k, -Xmx1g, synchrony.core, sql] DEBUG [synchrony-interop-executor:thread-2] [plugins.synchrony.bootstrap.DefaultSynchronyProcessManager] onBeforeStart Added shutdown hook for Synchrony DEBUG [ListenableFutureAdapter-thread-8] [plugins.synchrony.bootstrap.DefaultSynchronyProcessManager] lambda$startup$4 Synchrony process started, updating configuration.
1 2 3 4 5 6 WARN [ListenableFutureAdapter-thread-3] [plugins.synchrony.bootstrap.DefaultSynchronyMonitor] lambda$null$3 Rescheduled heartbeat check failed. -- url: /rest/synchrony-interop/restart | referer: https://[Confluence_base_URL]/admin/confluence-collaborative-editor-plugin/configure.action | traceId: 67b463998b20e12d | userName: USER_NAME com.atlassian.util.concurrent.TimedOutException: Timed out after: 33 SECONDS at com.atlassian.confluence.plugins.synchrony.bootstrap.DefaultSynchronyMonitor.lambda$pollHeartbeat$4(DefaultSynchronyMonitor.java:91) at com.atlassian.confluence.plugins.synchrony.bootstrap.DefaultSynchronyMonitor.pollHeartbeat(DefaultSynchronyMonitor.java:114) at com.atlassian.confluence.plugins.synchrony.bootstrap.DefaultSynchronyMonitor.lambda$null$1(DefaultSynchronyMonitor.java:97)

Nothing is written into the Atlassian Synchrony logs after that however, if we grab the startup command and run manually in the server command line we will get the following:

1 2 3 4 /opt/oracle-jdk-8u202/jre/bin/java -classpath /opt/atlassian/confluence/temp/2.1.0-master-9d112c9d.jar:/opt/atlassian/confluence-6.15.4/confluence/WEB-INF/lib/postgresql-42.1.1.jar -Xss2048k -Xmx1g synchrony.core sql bash: /opt/oracle-jdk-8u202/jre/bin/java: Permission denied

Cause

There are missing permissions for JAVA to execute the Synchrony startup command.

Solution

Resolution

Ensure the permissions for the JAVA folder, Confluence install directory and Confluence Data directory are set correctly. The Confluence user on Linux must have permissions to execute the synchrony startup command.

1 2 3 $ chmod -R 755 <Install-directory> $ chmod -R 755 <Home-directory> $ chmod -R 755 <Java-directory>

Updated on April 2, 2025

Still need help?

The Atlassian Community is here for you.