JQL Function Performance

JQL functions concerned with issue link relationships, i.e. parentsOf, subtasksOf, linkedIssuesOf, expression, linkedIssuesOfRecursive and linkedIssuesOfRecursiveLimited have been rewritten for even better performance.

Our load testing shows a performance increase of up to 5 times, although this depends on many factors.

You may not see this level of improvement when using the issue navigator, because of most of the time spent there is in JIRA doing permissions checks.

You are likely to see the biggest performance increase when searching a large number of issues, but retrieving few.

Indexing

The new algorithm requires a full reindex before it can be fully used. To avoid disruption, until you do a full reindex the functions will continue working as before, but you won’t see the performance increase.

For best results, install this upgrade at a time you can immediately then do a full reindex.

Any issues are likely to be resolved by a full reindex.

If you want to do your own performance benchmarks, consider using com.atlassian.jira.issue.search.SearchProvider.searchCountOverrideSecurity, which will give an accurate figure for comparison purposes.

JQL Functions in "expression"

You can now use any Date or User JQL functions in expression, such as startOfMonth etc.

Issues In Epics

New convenience function epicsOf and issuesInEpics have been added, which are a bit simpler than linkedIssuesOf.

Potentially Breaking changes

linkedIssuesOf

Previously linkedIssuesOf considered subtask and epics as linked issues. Now it doesn’t. You can use the new functions mentioned above for epics, or subtasksOf or parentsOf for finding children / parents.

expression

expression no longer attempts to compensate for time tracking durations - you need to do it manually, using the fromTimeTracking method. Check the documentation.

Other fixes and improvements

For how-to questions please ask on Atlassian Answers where there is a very active community. Adaptavist staff are also likely to respond there.

Ask a question about ScriptRunner for JIRA, for for Bitbucket Server, or for Confluence.