XWiki Platform
  1. XWiki Platform
  2. XWIKI-13904

The "Space Documents Panel" makes the Panel Wizard slow on wikis with many users

    Details

    • Difficulty:
      Unknown
    • Documentation:
      N/A
    • Documentation in Release Notes:
      N/A
    • Similar issues:

      Description

      Steps to reproduce:

      Results:

      • the Panel Wizard will give OOM on the default Jetty/Hsqldb distribution
      • the Panel Wizard will take up to 5min on a production wiki (Tomcat, MySQL) with ~13000 entries (11k users + 2k groups)
      1. after.png
        12 kB
        Guillaume Delhumeau
      1. after2.png
        10 kB
      2. before.png
        11 kB
      3. With200Users.png
        20 kB

        Issue Links

          Activity

          Hide
          Elena-Oana Tabaranu added a comment -

          On the Panel Wizard the "Space Documents Panel" lists all the pages from the XWiki space, thus all the users from the wiki. Since this panel is deprecated (it has a message Deprecated: Replace with Children or Siblings Panels) we could consider removing it.

          Show
          Elena-Oana Tabaranu added a comment - On the Panel Wizard the "Space Documents Panel" lists all the pages from the XWiki space, thus all the users from the wiki. Since this panel is deprecated (it has a message Deprecated: Replace with Children or Siblings Panels ) we could consider removing it.
          Hide
          Vincent Massol added a comment -

          More generically I can think of 2 solutions:

          • Introduce a new xproperty in the Panel class for preview content. Then it can be filled with static content to display in the Panel Wizard or some dynamic one if it's fast enough
          • Load the panels asynchronously so that it doesn't matter if a panel takes a lot of time to display. This is the only real solution IMO.

          Note that this issues is related to XWIKI-13101

          Show
          Vincent Massol added a comment - More generically I can think of 2 solutions: Introduce a new xproperty in the Panel class for preview content. Then it can be filled with static content to display in the Panel Wizard or some dynamic one if it's fast enough Load the panels asynchronously so that it doesn't matter if a panel takes a lot of time to display. This is the only real solution IMO. Note that this issues is related to XWIKI-13101
          Hide
          Eduard Moraru added a comment - - edited

          I agree that the clean solution would be to render the panels asynchronously. That and to paginate the list of panels as well.

          Show
          Eduard Moraru added a comment - - edited I agree that the clean solution would be to render the panels asynchronously. That and to paginate the list of panels as well.
          Hide
          Guillaume Delhumeau added a comment -

          I propose to replace the current content of the panel with the document tree macro.

          Show
          Guillaume Delhumeau added a comment - I propose to replace the current content of the panel with the document tree macro.
          Hide
          Guillaume Delhumeau added a comment - - edited
          Before After

          I have given up this one:

          because displaying the title instead of the page name is not the behavior we had before so I prefer support the retro-compatibility.

          Show
          Guillaume Delhumeau added a comment - - edited Before After I have given up this one: because displaying the title instead of the page name is not the behavior we had before so I prefer support the retro-compatibility.
          Hide
          Guillaume Delhumeau added a comment - - edited

          With 200 users:

          Show
          Guillaume Delhumeau added a comment - - edited With 200 users:

            People

            • Assignee:
              Guillaume Delhumeau
              Reporter:
              Elena-Oana Tabaranu
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Date of First Response: