Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-97186

Export/import processes scoped primary keys should behave like a stack instead of a set because layout/portlet processing's order is not fixed anymore

    Details

    • Type: Story
    • Status: Closed
    • Priority: Minor
    • Resolution: Discarded
    • Affects Version/s: 7.2.X, Master
    • Fix Version/s: None
    • Component/s: Staging
    • Labels:
      None

      Description

      During the testing of LPS-96929 we discovered that infinite loops can be introduced into the staging process easily when a portlet and a layout references each other. It happens because the BaseStageModelDataHandler checks if the current model has been processed in the current scope, but this scope is always cleared up whenever a new portlet is being processed. So exporting a layout, which exports it portlets causes the scope to be cleared up and after that if any portlet references the layout again the process starts an infinite loop.

       

      The task is to refactor the scope handling to use a stack instead of a list and identify the process execution points where we need to push and pop this stack!

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              zoltan.csaszi Zoltán Császi (Inactive)
              Reporter:
              daniel.kocsis Daniel Kocsis (Inactive)
              Recent user:
              Kiyoshi Lee
              Participants of an Issue:
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Packages

                  Version Package