Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-101133

viewinfo.action will trigger expensive permissions check for pages with lots of incoming links

XMLWordPrintable

      Issue Summary

      Confluence automatically creates an incoming link reference when a page is linked in another page. These link references can be view all in one place via "Page Information" or "viewinfo.action".

      If said page has a lot of incoming links referenced to it, visiting "Page Information" will queries all required links and checks permission for all of them. If the "Page Information" is trigger many times, this will potentially slow down Confluence or fill up thread pool.

      Steps to Reproduce

      1. Create a page with many incoming links
        • Replicated with ~1000 incoming links scattered across ~20 spaces
      2. Visit the "Page Information" of the page

      Expected Results

      The "Page Information" loads quickly

      Actual Results

      The "Page Information" loads slowly as Confluence queried all required links and checks permission for all of them

      The stacks that involved:

      	at com.atlassian.confluence.security.DefaultPermissionManager.hasPermissionNoExemptions(DefaultPermissionManager.java:116)
      	at com.atlassian.confluence.security.DefaultPermissionManager.hasPermission(DefaultPermissionManager.java:57)
      	at com.atlassian.confluence.security.DefaultPermissionManager.getPermittedEntities(DefaultPermissionManager.java:177)
      	at com.atlassian.confluence.security.PermissionManager.getPermittedEntities(PermissionManager.java:219)
              .....
              .....
      	at com.atlassian.confluence.pages.actions.beans.PageIncomingLinks.getIncomingLinks(PageIncomingLinks.java:38)
      	at com.atlassian.confluence.pages.actions.AbstractPageAction.getIncomingLinks(AbstractPageAction.java:126)
      	at com.atlassian.confluence.pages.actions.PageInfoAction.getIncomingLinksMap(PageInfoAction.java:92)
      

      Workaround

      Currently there is no known workaround for this behavior. A workaround will be added here when available

              03cb0c04aa4f Irina Tiapchenko
              jwaihou Jonathan Soo
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: