Jira Service Management project queues are slow

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

The queues page of a project loads very slowly. Other queues pages load quickly and no such slowness is perceived elsewhere in Jira.

The problem is unrelated to the number of queues the page has and the number of issues in each queue. For example, a page with 2 queues and 20 total issues may load slower than a page with 10 queues and 1000 total issues.

Environment

Jira Service Management 3 or 4.

Diagnosis

The main suspect for a slow queue page is one or more slow JQL queries that compose the queues. This is how we detect them:

1) Search for slow queries

Every slow query is printed on the atlassian-jira-slow-queries.log, and we should scan it for execution times with 5 digits or more (10000 milliseconds):

1 $ egrep "/PRJ/.*sd-queues-nav" <jira-home>/log/atlassian-jira-slow-queries.log | grep "username:USER-NAME" | egrep -o "executionTime=[[:digit:]]{5}"

Replace on the command above (and others on this KB):

  • PRJ by the project key which queue page is slow

  • Jira-HOME by the Jira home directory on the server

  • USER-NAME by the username loading the queues page 

We expect the output to be similar to the example below:

1 2 3 4 5 6 executionTime=13185 executionTime=12387 executionTime=11231 executionTime=56229 executionTime=14569 executionTime=12909

In which we'd have (by the example) 5 queries around 11 and 15 seconds and one almost a minute long (executionTime in milliseconds).

We may also search for queries that take between 1 and 10 seconds (exactly 4-digit execution time):

1 $ egrep "/PRJ/.*sd-queues-nav" <jira-home>/log/atlassian-jira-slow-queries.log | grep "username:USER-NAME" | egrep -o "executionTime=[[:digit:]]{4},"

Cause

Slow JQLs impact the queue page load time because Jira waits for all queues to finish loading and bring the issue count on each. We have a feature requests to improve this:

Solution

The solution to this problem is to work on the slow queries to optimize them or break a queue in two or more with faster queries.

Jira Service Management queues were designed to show issues to be worked on. For historical data  — like "issues resolved" — a Dashboard might be a better solution than a queue.

1) Identify the slow queries

We're now interested in the slow queries search terms. The commands below can be used to that purpose:

1 $ egrep "/PRJ/.*sd-queues-nav" <jira-home>/log/atlassian-jira-slow-queries.log | grep "username:USER-NAME" | egrep -o ".*executionTime=[[:digit:]]{5}.*" | egrep -o "{query=.*?, queryTermMetrics" | sort | uniq -c
1 $ egrep "/PRJ/.*sd-queues-nav" <jira-home>/log/atlassian-jira-slow-queries.log | grep "username:USER-NAME" | egrep -o ".*executionTime=[[:digit:]]{4},.*" | egrep -o "{query=.*?, queryTermMetrics" | sort | uniq -c

This will print the slow queries statements in a syntax similar to the JQL, preceded by the number of times the query appeared in the log.

2) Adjust the queries

Unfortunately, there's no link between the log and the exact queue, so we need to go through each queue JQL on the slow page.

The command output from step 1 above should make it easier to identify the slow queues, though.

Updated on March 6, 2025

Still need help?

The Atlassian Community is here for you.