Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-55804

Performance: Reduce memory footprint and execution time for RoleMap#newMatchingRoleMap()

    XMLWordPrintable

    Details

    • Similar Issues:
    • Released As:
      Role Strategy 2.10

      Description

      newMatchingRoleMap() is a root method in RoleStrategy#getACL() : https://github.com/jenkinsci/role-strategy-plugin/blob/a2069c1fcb56ff0cd8b80a0655931f5974634eee/src/main/java/com/michelin/cio/hudson/plugins/rolestrategy/RoleBasedAuthorizationStrategy.java#L124 . Its performance is not ideal, because the underlying method creates an intermediate collection for matching roles: https://github.com/jenkinsci/role-strategy-plugin/blob/6b91d9fa597fb6b6766589556aab4ab5d727368e/src/main/java/com/michelin/cio/hudson/plugins/rolestrategy/RoleMap.java#L340 

      It would be great to improve performance by refactoring newMatchingRoleMap() and getMatchingRoles() to have an iterator-based RoleWalker logic without intermediate collections

       

        Attachments

          Activity

            People

            • Assignee:
              deepansh_nagaria Deepansh Nagaria
              Reporter:
              oleg_nenashev Oleg Nenashev
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: