-
Type:
Bug
-
Status: Closed
-
Resolution: Fixed
-
Affects Version/s: 7.0.X, Master
-
Component/s: Application Security > Permissions, Performance
-
Labels:
-
Fix Priority:3
-
Git Pull Request:
Description
When we evaluate permissions for layouts, we first check if the layout has ever had its default permissions set. This is no longer necessary, since we always instantiate a layout with its default permissions when creating a new layout. This database call can be removed to improve performance.
The impact of this to performance can actually be quite significant if you have many top-level pages within a site. Any time a user tries to visit one of those pages in the site, Liferay will evaluate permissions for all the top-level pages in the site of the same privateLayout value. So if you have n top-level public pages in the site for instance, this can save n database calls when loading any public page in the site, significantly speeding up the loading.
Steps to Reproduce
N/A