-
Bug
-
Resolution: Unresolved
-
High
-
None
-
9.2.7
-
Severity 2 - Major
-
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
- Create a page with many incoming links
Replicated with ~1000 incoming links scattered across ~20 spaces
- 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