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

Bad Response time for definition endpoint on multi-engine scenario

    XMLWordPrintable

    Details

    • Type: Bug Report
    • Status: Done
    • Priority: L3 - Default
    • Resolution: Fixed
    • Affects Version/s: 3.0.0
    • Fix Version/s: 3.1.0
    • Component/s: backend
    • Labels:
      None

      Description

      Given:
      I have multiple engines connected to Optimize and have configured no default tenant for these, and they contain definitions with a tenantId of {{null} (shared definitions)

      When:
      The report editor loads the definitions from definitionVersionsWithTenants (or from the new equivalent `/api/definition/:type:/keys`)

      Then:
      The response time is significantly higher (for a test with 1k definitions it was at the magnitude of 10-20 slower) than for a single engine scenario or a scenario where I have default tenants configured per engine.

      Expected:
      For multi-engine scenarios the response time of the definition endpoints should not increase significantly. The response time should ideally only depend on the number of definitions nothing else.

      Hint:

      • we also need to validate other potentially affected parts of the application, in particular the cause of the issue is in EngineDefinitionAuthorizationService#filterAuthorizedTenantsForDefinition in terms of the TENANT_NOT_DEFINED handling where each engine/tenant pair is causing a check whether that definition exists for the particular engine
      • CollectionService.getCollectionDefinitionsGroupedByVersionAndTenantForType should ideally only fetch the definitions of the scope, currently it fetches all definitions and only then filters by the scope which makes it prone to the same performance bottleneck

      AT:

      • the performance bottleneck is identified and fixed
      • there should be performance tests ensuring acceptable performance of this endpoint going forward

        mgm-controller-panel

        This is the controller panel for Smart Panels app

          Attachments

            Issue Links

              Activity

                People

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

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    Salesforce