Uploaded image for project: 'Jira Server and Data Center'
  1. Jira Server and Data Center
  2. JRASERVER-65913

On large instances reports utilise memory inefficiently

    XMLWordPrintable

    Details

    • Feedback Policy:
      We collect Jira feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      Description

      Problem

      All reports in JIRA uses DefaultReaderCache so field values far all issues are cached between executions.

      DefaultReaderCache is creating single ArrayList with SingletonLists as values for each field used in reports. On JIRA with 1M issues this will create 2M objects for each field used in reports. As a result on large instances we have hundreds of millions of objects that pollutes jvm memory. On very large instances those objects are humongous so they will cause more troubles.

       

      Solution

      Create JiraDocValues which will store all values for all issues for custom field in single array. 

      This way we will be creating one humongous object for a field and avoid unnecessary pressure on memory and GC.

      This should not have impact on performance and bring more stability to busy instances.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              Unassigned
              Reporter:
              ajakubowski Adam Jakubowski (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: