Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-16744

Improve the performance of checking if a user belongs to a particular group.

    XMLWordPrintable

Details

    • 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

      Performance profiling shows that a massive amount of CPU time is spent checking OFBizAccessProvider.inGroup()
      The problem seems to be that although OFBizAccessProvider caches the relationships of users to groups, the way that the cache is implemented and used is not optimal.

      The two main tiem we mostly use this are:

      • the dashboard checking what projects the current user has permission to view.
      • Calling GroupDropDown.hasPermission() from various places - seems to mostly stem from Dashboard as well.

      This problem exists in 3.13, but has possibly been exacerbated on trunk by the introduction of JQL.

      (Note that this issue is specific to the standard user management module, Crowd, LDAP, and other user management modules use other implementations of AccessProvider that may or may not suffer similar problems)

      Attachments

        1. annotations-1.3.9.jar
          14 kB
        2. google-collections-1.0.jar
          625 kB
        3. jsr305-1.3.9.jar
          32 kB

        Activity

          People

            mlassau Mark Lassau (Inactive)
            mlassau Mark Lassau (Inactive)
            Votes:
            14 Vote for this issue
            Watchers:
            18 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: