Uploaded image for project: 'Jira Software Server and Data Center'
  1. Jira Software Server and Data Center
  2. JSWSERVER-13194

UnreleasedVersions() is slow on large instances

    XMLWordPrintable

    Details

      Description

      Summary

      Loading time for Kanban board with default work subfilter is longer.
      Default work subfilter with UnreleasedVersions():

      fixVersion in unreleasedVersions() OR fixVersion is EMPTY
      

      Calls to /rest/greenhopper/1.0/xboard/work/allData.json are more slow with default work subfilter.

      Environment

      • Instances with large number of Versions are affected, example: 10k+

      Steps to Reproduce

      1. Load board

      Expected Results

      Loading board doesn't degrade with number of version in other project (in whole JIRA)

      Actual Results

      Loading board takes longer when there is a higher number of version in other project (in whole JIRA).

      Notes

      See related KB: Kanban board loading is slow

      Some improvements have already been done in GHS-9611, JRA-38883, JRASERVER-62666

      Original data from user

      Here are some system stats

      Total versions: 23792
      Of the total, 20616 are *unreleased*.
      
      JIRA issues: 1.5 million
      Projects: 660
      

      Here's a before and after load time in seconds when we delete the work subfilter:

      11.7050  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      11.3350  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      
      --- delete work subfilter ---
      
      3.0680  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      3.1440  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      3.0290  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      3.1320  https://jira/rest/greenhopper/1.0/xboard/work/allData.json 
      

      Workaround

      • Delete Kanban board sub-filter if you don't need versions
      • If you need version, add specific project(s) related to JQL filter for the board into unreleasedVersions function
        fixVersion in unreleasedVersions(ProjA, ProjB) OR fixVersion is EMPTY
        

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              izinoviev Ilya Zinoviev (Inactive)
              Reporter:
              davidrr David Yu
              Votes:
              35 Vote for this issue
              Watchers:
              37 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: