Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-12286

New KIM API to bulk fetch display name information

    Details

    • Type: Improvement Improvement
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.5
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Similar issues:
      KULRICE-13374Create script to bulk load principles, entities into a Rice db
      KULRICE-1063Split out BOs and KIMService into a new kim-api maven module
      KULRICE-3181After selecting KimType before creating a new group, the Kim Type Name isn't displayed on the screen
      KULRICE-889New workflow API
      KULRICE-907Add in concept of bulk delivery of MessageDeliverers
      KULRICE-2196Create new workflow user service which uses KIM APIs
      KULRICE-1223Put together 0.9.1 list of Rice licensing and library information
      KULRICE-12406Add method to get privacy preference information to IdentityService
      KULRICE-6536Coordinate review of all Rice 2.0 apis
      KULRICE-9922Create a JpaPersistenceProvider deleteMatching method to take advantage of bulk CriteriaDelete api in JPA 2.1
    • Rice Module:
      KIM
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Review Completed
    • Code Review Status:
      Not Required
    • Contributing Institution:
      Indiana Univ
    • Include in Release Notes?:
      Yes

      Description

      This is a new API method for the IdentityService. The KPME team at IU needed to fetch multiple user's display names from the database at the same time. One user needed to fetch this information for around 2,500 users which was a very slow operation with the current options in the identity service so it took several minutes to gather that information. With this new API and a new database index we were able to fetch this information in less than a second.

        Activity

        Hide
        Eric Westfall added a comment -

        Use of this api would probably immediately provide a significant speed boost to both the Action List and Document Search. We should log jiras for 2.4.1 for both of those as well (it wouldn't be considered part of this specific IU contribution, but a downstream benefit from it).

        Show
        Eric Westfall added a comment - Use of this api would probably immediately provide a significant speed boost to both the Action List and Document Search. We should log jiras for 2.4.1 for both of those as well (it wouldn't be considered part of this specific IU contribution, but a downstream benefit from it).
        Hide
        James Bennett added a comment -

        The new API method has been contributed and I did a bit of work to improve the performance of the method on top of the straight contribution. At IU we implemented this using a straight SQL statement against the database and then built up the objects manually, but this contribution uses JPQL to retrieve the objects instead. I found that the isSuppressName on the EntityNameBase class was calling the identity service to fetch privacy preference information regardless of whether it already had it which lead to an N+1 select performance issue when trying to use the method. I corrected that as well as part of this contribution.

        Show
        James Bennett added a comment - The new API method has been contributed and I did a bit of work to improve the performance of the method on top of the straight contribution. At IU we implemented this using a straight SQL statement against the database and then built up the objects manually, but this contribution uses JPQL to retrieve the objects instead. I found that the isSuppressName on the EntityNameBase class was calling the identity service to fetch privacy preference information regardless of whether it already had it which lead to an N+1 select performance issue when trying to use the method. I corrected that as well as part of this contribution.
        Hide
        Jessica Coltrin (Inactive) added a comment -

        moving IU contributions to 2.5

        Show
        Jessica Coltrin (Inactive) added a comment - moving IU contributions to 2.5

          People

          • Assignee:
            James Bennett
            Reporter:
            James Bennett
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Structure Helper Panel