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