Sunday, June 8, 2008

OutOfMemory errors with WebSphere Portal

WebSphere Portal server might throw OutOfMemory (OOM) errors and might got hung and unresponsive when serving or dowloading large documents through WCM (IBM Workplace Web Content Management ) which are stored in PDM (Portal Document Manager). You might see the following error in SystemErr.log and the JVM might have produced a heapdump,



[5/14/08 14:35:32:984 PDT] 00000086 ModuleManager E IWKCT1382X: Major exception caught: com.presence.connect.business.module.ErrorExecutingRequestException: IWKMU1062X: Message: IWKCT1366X: Exception caught servicing a Servlet request for PDMProxy, Cause: java.lang.OutOfMemoryError
[5/14/08 14:35:32:985 PDT] 00000086 ModuleManager E IWKCT1383X: Unexpected error from Module. Details of cause to follow:
[5/14/08 14:35:32:986 PDT] 00000086 ModuleManager E
java.lang.OutOfMemoryError
at com.presence.connect.connector.content.ContentAPIConnection.getBytes(ContentAPIConnection.java(Compiled Code))
at com.presence.connect.connector.content.ContentAPIConnection.getItemContents(ContentAPIConnection.java:516)
at com.presence.connect.connector.content.ContentAPIConnector.getItemContents(ContentAPIConnector.java:216)
at com.aptrix.pluto.resource.PDMResourceUtils.createPDMMime(PDMResourceUtils.java:632)
at com.aptrix.pluto.resource.PDMResourceUtils.getPDMData(PDMResourceUtils.java:419)
at com.aptrix.pluto.resource.PDMResourceServerModule.getResourceMime(PDMResourceServerModule.java:968)
at com.aptrix.pluto.resource.PDMResourceServerModule.buildResponse(PDMResourceServerModule.java:516)
at com.aptrix.pluto.resource.PDMResourceServerModule.retrieveResource(PDMResourceServerModule.java:355)
at com.aptrix.pluto.resource.PDMResourceServerModule.process(PDMResourceServerModule.java:276)
at com.presence.connect.business.module.ModuleManager.launchBusiness(ModuleManager.java:121)
at com.presence.connect.business.module.ModuleManager.launchBusiness(ModuleManager.java:384)
at com.presence.connect.RequestExecutable.execute(RequestExecutable.java:84)
at com.presence.connect.dispatcher.Task.run(Task.java:151)
at com.presence.connect.ConnectClient.processSynchronous(ConnectClient.java:167)
at com.presence.connect.ConnectServlet.process(ConnectServlet.java:298)
at com.presence.connect.ConnectServlet.doGet(ConnectServlet.java:120)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1572)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java(Compiled Code))


In order to resolve the issue please apply the IBM recommended ifix PK66778 and tune the JVM heap size, xloratio , pCluster & kCluster based on your application needs, expected load and the optimum performance. IBM Monitoring and Diagnostic Tools for Java - Garbage Collection and Memory Visualizer (GCMV) which is a part of IBM Support Assistant Tools can help you tune these parameters based on the Garbage Collection logs history.

No comments: