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

Cache definition authorization relevant search calls for /entities listing

XMLWordPrintable

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

      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

        This is the controller panel for Smart Panels app

          1. fetchLog.txt
            2 kB
            Sebastian Bathke

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

                Created:
                Updated:
                Resolved: