Cluster Locks health check fails on syncRepositoryList in Jira

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

Jira's cluster lock health check fails often for lock com.atlassian.jira.plugins.dvcs.service.RepositoryService.syncRepositoryList.

Node '<

node-name

>' has been holding cluster lock, '

com.atlassian.jira.plugins.dvcs.service.RepositoryService.syncRepositoryList

', for

<seconds

> seconds.

This may lead to further index replication health check alerts as a consequence of this.

Environment

All versions of Jira Software 7.x and 8.x.

Diagnosis

  1. The health check alert on syncRepositoryList in Jira's health check page;

  2. The query below results in a value of 3600000 or lower than 86400000:

    1 select interval_millis from clusteredjob where job_runner_key='com.atlassian.jira.plugins.dvcs.scheduler.DvcsScheduler';

Cause

DVCS integration has two main strategies to update Jira issues:

  1. Webhooks that are triggered upon each action in DVCS and update Jira right on time

  2. A scheduled "sync-everything" job that serves as a fail over to the webhook, syncing everything from time to time.

The scheduled job is prone to performance issues when there are too many repos or communication delays, lading to the following issue:

JSWSERVER-14061 - Long running synchronization initiation blocks subsequent scheduled syncs and other scheduled tasks

Solution

The scheduled DCVS "sync-everything" job is default to run every hour — which may not give it enough time to complete.

A reasonable solution is to increase this schedule interval to more than 1 hour (3600000 millis). Please refer to this article on How to change the interval or schedule of the DVCS repositories sync for instructions on that.

Updated on April 2, 2025

Still need help?

The Atlassian Community is here for you.