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

Still need help?

The Atlassian Community is here for you.

Ask the community

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:

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.
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:

/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.

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.

$ chmod -R 755 <Install-directory>
$ chmod -R 755 <Home-directory>
$ chmod -R 755 <Java-directory>



Last modified on Mar 5, 2022

Was this helpful?

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