Uploaded image for project: 'Camunda Optimize'
  1. Camunda Optimize
  2. OPT-4258

Cache definition authorization relevant search calls for /entities listing

    XMLWordPrintable

Details

    • Task
    • Resolution: Fixed
    • L3 - Default
    • 3.2.0
    • None
    • backend
    • None
    • Not defined

    Description

      Context:
      In SUPPORT-8628 it was discovered that due to changes in Optimize 3.1.0 the peformance of calls to EngineDefinitionAuthorizationService.isAuthorizedToSeeDefinition does not scale well, especially in the scenario of the */entities and collection/<id>/role endpoints due to a nested Reader call being definitionReader.getDefinitionEngines(definitionType, definitionKey) which causes one elasticsearch request per entity. Depending on the latency to elasticsearch this add up quickly to bad response times as these calls are ran sequentially and redundantly (n reports for same definition casue such search queries).

      AT:

      • results of definitionReader.getDefinitionEngines(definitionType, definitionKey) need to be cached for a configurable cache window
      • results of TenantService.getTenants should get cached for a configurable cache window
      • results of eventProcessRoleService.getRoles should get cached for a configurable cache window
      • performance tests are extended to verify the caching benefits on /entities endpoints (private and collection specific) (response times must be below < 1s)
      • cache entry limit and default ttl should be configurable

      mgm-controller-panel

        This is the controller panel for Smart Panels app

        Attachments

          Issue Links

            Activity

              People

                Unassigned Unassigned
                sebastian.bathke Sebastian Bathke
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  Salesforce