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

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

XMLWordPrintable

    • Role Strategy 2.10

      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

       

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

              Created:
              Updated:
              Resolved: