Migration guide

This page describes how to migrate from Jira Server or Jira Data Center to Jira Cloud and continue using the JQL Search Extensions.

Platform differences

JQL syntax

Support for JQL extensions is different in Jira server and cloud. On server, all the extensions are implemented as JQL functions and invoked as the following:

issue in commentedBefore("2018-05-26")

On the other hand in Jira Cloud, most JQL extensions are implemented as JQL aliases and invoked similarly to normal fields:

commentedOnDate < "2018-05-26"

Some more complex searches are implemented as JQL functions.

JQL aliases added by the app are accessible in Jira Advanced Search. JQL functions are accessible from Extended Search screen or via Extended Search filters in Jira advanced search.

Refer to the table in the next section to see the mapping between server and cloud JQL functions.

Execution model

On server, the search queries are executed in the same JVM as Jira. In the cloud, JQL Search Extensions service is a completely separate deployment that communicates with Jira over the REST API.

As a result, all operation in the cloud are indexed asynchronously and any changes in Jira are reflected in the JQL with a slight delay.

The service is maintained and supported by our team.

JQL functions

The following table lists the JQL extensions available on server and their cloud counterparts. Almost all functions from server have an equivalent in cloud.

See the full list of Cloud JQL extensions with examples: https://jqlsearchextensions.atlassian.net/wiki/spaces/SEARCH/pages/3375124

JQL on Server and DC

JQL in Cloud

Comments

JQL on Server and DC

JQL in Cloud

Comments

Projects

MovedIssues

movedProjects

 

Fields

FieldMatch

functions: regex or wildcardMatch

 

FieldsHaveSameValue

aliases:

  • hasSameUpdatedAndCreatedDate

  • hasSameAssigneeAndReporter

  • hasSameVersions

Limited support at the moment but a generic function is on our roadmap

Attachments

AttachedAfter

attachedOnDate

 

AttachedBefore

attachedOnDate

 

AttachedBetween

attachedOnDate

 

AttachedOnDate

attachedOnDate

 

AttachedByUser

attachedByUser

 

AttachmentExtension

attachmentExtension

 

AttachmentName

attachedByUser

 

AttachmentsCountEqualTo

attachmentsCount

 

AttachmentsCountGreaterThan

attachmentsCount

 

AttachmentsCountLessThan

attachmentsCount

 

Comments

CommentedAfter

commentedOnDate

 

CommentedBefore

commentedOnDate

 

CommentedBetween

commentedOnDate

 

CommentedOnDate

commentedOnDate

 

CommentedByUser

  • commentedByUser

  • commentLastCreatedBy

  • commentLastUpdatedBy

 

CommentsCountEqualTo

commentsCount

 

CommentsCountGreaterThan

commentsCount

 

CommentsCountLessThan

commentsCount

 

Versions

AffectedVersionsArchivedCountLessThan

affectedVersionsArchived

 

AffectedVersionsArchivedCountEqualTo

affectedVersionsArchived

 

AffectedVersionsArchivedCountGreaterThan

affectedVersionsArchived

 

AffectedVersionsCountLessThan

affectedVersionsCount

 

AffectedVersionsCountEqualTo

affectedVersionsCount

 

AffectedVersionsCountGreaterThan

affectedVersionsCount

 

AffectedVersionsOpenedCountLessThan

affectedVersionsOpened

 

AffectedVersionsOpenedCountEqualTo

affectedVersionsOpened

 

AffectedVersionsOpenedCountGreaterThan

affectedVersionsOpened

 

AffectedVersionsReleasedCountLessThan

affectedVersionsReleased

 

AffectedVersionsReleasedCountEqualTo

affectedVersionsReleased

 

AffectedVersionsReleasedCountGreaterThan

affectedVersionsReleased

 

AffectedVersionReleasedOnDate

affectedVersionReleasedDate

 

AffectedVersionReleasedBetweenDates

affectedVersionReleasedDate

 

AffectedVersionReleasedAfterDate

affectedVersionReleasedDate

 

AffectedVersionReleasedBeforeDate

affectedVersionReleasedDate

 

FixVersionsArchivedCountLessThan

fixVersionsArchived

 

FixVersionsArchivedCountEqualTo

fixVersionsArchived

 

FixVersionsArchivedCountGreaterThan

fixVersionsArchived

 

FixVersionsCountLessThan

fixVersionsCount

 

FixVersionsCountEqualTo

fixVersionsCount

 

FixVersionsCountGreaterThan

fixVersionsCount

 

FixVersionsOpenedCountLessThan

fixVersionsOpened

 

FixVersionsOpenedCountEqualTo

fixVersionsOpened

 

FixVersionsOpenedCountGreaterThan

fixVersionsOpened

 

FixVersionsReleasedCountLessThan

fixVersionsReleased

 

FixVersionsReleasedCountEqualTo

fixVersionsReleased

 

FixVersionsReleasedCountGreaterThan

fixVersionsReleased

 

FixVersionReleasedOnDate

fixVersionReleaseDate

 

FixVersionReleasedBetweenDates

fixVersionReleaseDate

 

FixVersionReleasedAfterDate

fixVersionReleaseDate

 

FixVersionReleasedBeforeDate

fixVersionReleaseDate

 

LatestReleaseVersionForProject

 

no direct cloud equivalent at the moment

Links

LinksCountLessThan

linksCount

 

LinksCountGreaterThan

linksCount

 

LinksCountEqualTo

linksCount

 

LinkedBy([linktype], jql-query or issuekeys)

function linkedIssuesOfQuery

 

Links(jql-query, link type)

function linkedIssuesOfQuery

 

LinksIssue

  • linkedBy

  • linksIssue

 

LinkType

linkType

 

LinkedIssueStatus

linkedIssueStatus

 

LinkedIssueStatusCategory

linkedIssueStatusCategory

 

LinkedIssueType

linkedIssueType

 

LinkedIssuePriority

linkedIssuePriority

 

LinkedByIssueProject

linkedByIssueProject

 

Updated

UpdatedByUserCountLessThan

updatedByUsersCount

 

UpdatedByUserCountGreaterThan

updatedByUsersCount

 

UpdatedByUserCountEqualTo

updatedByUsersCount

 

UpdatedByUser

updatedBy

 

TransitionedByUser

transitionedBy

 

LoggedTimeByUser

loggedTimeBy

 

Subtasks

SubTaskOf(jql-query)

function subtasksOfParentsInQuery

 

ParentOf(jql-query)

functions

  • parentsOfIssuesInQuery

  • parentsOfIssuesInQueryRecursive

 

SubtaskCountLessThan

subtasksCount

 

SubtaskCountGreaterThan

subtasksCount

 

SubtaskCountEqualTo

subtasksCount

 

SubTaskKey

subtaskKey

 

SubtaskPriority

subtaskPriority

 

SubTaskType

subtaskIssueType

 

SubTaskStatus

subtaskStatus

 

SubTaskStatusCategory

subtaskStatusCategory

 

Software development

OpenPullRequestsCount
CommitsCount
FailingBuildsCount
OpenReviewsCount
PullRequestsCount
ReviewsCount

 

There is no support in JQL Search Extensions

If you linked your development tools, refer to the native Jira Cloud JQL documentation https://confluence.atlassian.com/jirasoftwareserver/advanced-searching-development-fields-reference-973491363.html

Issue hierarchy

AllIssuesInEpic(jql-query or issuekey)

function childrenOfEpicsInQuery

 

EpicOf(jql-query)

function epicsOfChildrenInQuery

 

User

userMatch

 

no direct cloud equivalent at the moment

Migration steps

The first step is to identify queries that are using JQL extensions. You should especially look at:

  • filters

  • board filters

  • automation rules

  • dashboard gadgets

  • plugins that accept filters and JQL queries

Once the queries are identified, translate the calls to JQL extension functions using the table above.

You can always ask our support for help and further guidance.