Issue
In recent versions of Liferay, the liferay-learn taglib has been introduced to automatically include links to the official Liferay Learn documentation. This functionality is controlled by the property:
Prior to 2024.Q2:
learn.resources.enabled=false|true
After 2024.Q2
learn.resources.mode=dev|off|on
When enabled, the service fetches links dynamically. However, after clearing the caches (e.g., portal caches), the taglib re-triggers requests to retrieve the relevant documentation links for every usage of the taglib.
Although this behavior does not typically cause significant latency, it may contribute to performance degradation under specific conditions or environments where frequent cache clearing or if a block trying to retrieve this information occurs.
Environment
- Quarterly Releases
Resolution
To mitigate potential performance issues, you can disable the automatic inclusion of Liferay Learn links by setting the following property in your portal-ext.properties file:
##
## Learn Tag Library
##
#
# Set the value to "dev" to read Learn resources from http://localhost:3062.
# Go to the learn-resources directory (i.e.
# https://github.com/liferay/liferay-portal/tree/master/learn-resources) and
# run "docker-compose up" to start the dev server. You can then access
# http://localhost:3062/server-admin-web.json and other resources.
#
# Set the value to "off" to disable the Learn tag library.
#
# Set the value to "on" to read Learn resources from
# https://s3.amazonaws.com/learn-resources.liferay.com.
#
# Env: LIFERAY_LEARN_PERIOD_RESOURCES_PERIOD_MODE
#
#learn.resources.mode=dev
#learn.resources.mode=off
learn.resources.mode=on
This will completely disable the liferay-learn taglib functionality, ensuring no links to Liferay Learn documentation are fetched or displayed.