Ask Questions and Find Answers
Important:
Ask is now read-only. You can review any existing questions and answers, but not add anything new.
But - don't panic! While ask is no more, we've replaced it with discuss - the new Liferay Discussion Forum! Read more here here or just visit the site here:
discuss.liferay.com
RE: Liferay is very slow when accessing to the portlet address "/document_lib"
Hi,
I have implemented Liferay Community Edition Portal 7.4.3.65 CE GA65 (Cavanaugh / Build 7403 / February 24, 2023) and using the PostgreSQL database.
When the user access to the portlet address address ".../document_library/voyc/view_file/362607?_com_liferay_document_library_web_portlet_DLPortlet_INSTANCE_voyc_redirect=...", the response is very slow, more than 15 seconds.
When generating the thread-dump, I verify that it is in the part of the code that executes the translation of the keys.
"http-nio-8080-exec-34" #129 daemon prio=5 os_prio=0 tid=0x00007fbea4a7f830 nid=0xe4 runnable [0x00007fbdcccf6000]
java.lang.Thread.State: RUNNABLE
at java.util.HashMap.hash(HashMap.java:340)
at java.util.HashMap.put(HashMap.java:613)
at java.util.HashSet.add(HashSet.java:220)
at java.util.AbstractCollection.addAll(AbstractCollection.java:344)
at java.util.HashSet.<init>(HashSet.java:120)
at com.liferay.portal.language.LanguageResources._getSetWithOverrideKeys(LanguageResources.java:157)
at com.liferay.portal.language.LanguageResources.access$200(LanguageResources.java:48)
at com.liferay.portal.language.LanguageResources$LanguageResourcesBundle.handleKeySet(LanguageResources.java:270)
at java.util.ResourceBundle.containsKey(ResourceBundle.java:1824)
at com.liferay.portal.kernel.util.AggregateResourceBundle.handleGetObject(AggregateResourceBundle.java:74)
at java.util.ResourceBundle.getObject(ResourceBundle.java:441)
at java.util.ResourceBundle.getString(ResourceBundle.java:407)
at com.liferay.portal.kernel.util.ResourceBundleUtil.getString(ResourceBundleUtil.java:144)
at com.liferay.portal.language.LanguageImpl._get(LanguageImpl.java:1853)
at com.liferay.portal.language.LanguageImpl.get(LanguageImpl.java:1006)
at com.liferay.portal.language.LanguageImpl.get(LanguageImpl.java:989)
at com.liferay.portal.kernel.language.LanguageUtil.get(LanguageUtil.java:197)
at com.liferay.dynamic.data.mapping.util.DDMFormFieldFactoryHelper.getLocalizedValue(DDMFormFieldFactoryHelper.java:379)
at com.liferay.dynamic.data.mapping.util.DDMFormFieldFactoryHelper.getDDMFormFieldOptions(DDMFormFieldFactoryHelper.java:212)
at com.liferay.dynamic.data.mapping.util.DDMFormFieldFactoryHelper.createDDMFormField(DDMFormFieldFactoryHelper.java:82)
at com.liferay.dynamic.data.mapping.util.DDMFormFactoryHelper.getDDMFormFields(DDMFormFactoryHelper.java:167)
at com.liferay.dynamic.data.mapping.util.DDMFormFactoryHelper.createDDMForm(DDMFormFactoryHelper.java:71)
at com.liferay.dynamic.data.mapping.util.DDMFormFactory.create(DDMFormFactory.java:35)
at com.liferay.dynamic.data.mapping.internal.io.util.DDMFormFieldSerializerUtil._getDDMFormFieldTypeSettingsDDMForm(DDMFormFieldSerializerUtil.java:153)
at com.liferay.dynamic.data.mapping.internal.io.util.DDMFormFieldSerializerUtil._addProperties(DDMFormFieldSerializerUtil.java:81)
at com.liferay.dynamic.data.mapping.internal.io.util.DDMFormFieldSerializerUtil._toJSONObject(DDMFormFieldSerializerUtil.java:239)
at com.liferay.dynamic.data.mapping.internal.io.util.DDMFormFieldSerializerUtil._fieldsToJSONArray(DDMFormFieldSerializerUtil.java:130)
at com.liferay.dynamic.data.mapping.internal.io.util.DDMFormFieldSerializerUtil.serialize(DDMFormFieldSerializerUtil.java:55)
at com.liferay.dynamic.data.mapping.internal.io.DDMFormJSONSerializer.serialize(DDMFormJSONSerializer.java:69)
at com.liferay.dynamic.data.mapping.internal.util.DDMImpl.getDDMFormJSONString(DDMImpl.java:201)
at com.liferay.dynamic.data.mapping.util.DDMUtil.getDDMFormJSONString(DDMUtil.java:78)
at org.apache.jsp.html.start_jsp._jspService(start_jsp.java:513)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:779)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:779)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:328)
at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:340)
at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:63)
at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:120)
at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:48)
at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:67)
I have already changed the "translations.disabled" property to true, and I can see that access has become much faster.
Please, can someone help me how I can resolve this slowness or have you ever experienced the same problem?
Thanks
Hello Joel, I think it got solved by this ticket: https://liferay.atlassian.net/browse/LPS-179475
I recommend you to update to the latest release available.
Hello Sergio,
Thanks for the reply and I've already looked at the ticket and there are corrections in the class that seems to be the cause, taking into account the version of Liferay I'm using.
I will evaluate the possibility of updating the version.
Thanks again.
Hello Sergio,
After upgrading to version 7.4.3.120, it started working and many other performance improvements can be seen on the portal.
Thanks.