Uploaded image for project: 'Magnolia'
  1. Magnolia
  2. MAGNOLIA-9197

Connector performance improvements

    XMLWordPrintable

Details

    • Story
    • Resolution: Unresolved
    • Neutral
    • None
    • None
    • None

    Description

      Initial report: when you close a category, it will load all the items expanded by id, one by one, causing lot of calls and closing the subapp for category detail consumea. lot of time. Everytime you open the commerce app it happens the same, and that will cause also for other connectors. More over, there is no cache layer implemented efficiently there.

      Questions for discovery

      • Which connectors are affected
      • Is there a way we can improve this with a single fix once and for all

       

      Steps to reproduce

      This issue was detected with commercetools connector. It´s expected to happen with other connectors too.

      To reproduce:

      • Log in https://author-addons.beta.de.magnolia-cloud.com
      • the user opens a catalog via commerce tools and browses to different categories
      • Select one and click on view products
      • Close the open sub app for the category (jackets in the image bellow)

      Expected results

      A user closes apps and not delay is shown

      Actual results

      The loading bar on the user blocks the interface when closing the detail sub app for a category, taking long time until the catalog browser is available. It happens the same when swapping app, closing ecommerce app, opening pages app, and going to ecommerce app again.

      Development notes 

      When closing the subapp and vaadin goes into the focus for the main app, category request per id is triggered per each open item. In the image above it will trigger the request per "women", "clothing" "jackets", "Blazer"....etc reaching as many calls as open items.

      To detect while debugging, place a break point under https://git.magnolia-cms.com/projects/ADDON/repos/ecommerce/browse/magnolia-ecommerce-commercetools-connector/src/main/java/info/magnolia/ecommerce/commercetools/SphereClientProvider.java#59

      You will see there is only on client cache connection, which is not caching the request properly.

      Moreover the different requests that blocks the UI are located at https://git.magnolia-cms.com/projects/ADDON/repos/ecommerce/browse/magnolia-ecommerce-commercetools-connector/src/main/java/info/magnolia/ecommerce/commercetools/categories/ByParentCategoryId.java#57

      This same behaviour is expected to happen in other clients, although it has not been analysed yet.

       

      Checklists

        Acceptance criteria

        Attachments

          Activity

            People

              Unassigned Unassigned
              mduerig Michael Duerig
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Checklists

                  Task DoD