Hello experts, today I wanted to examine some of the portal logs using the Log Viewer on Visual Administrator, since we have had performance problems for a few days now. However, when clicking on this service, the Visual Administrator would freeze for a long while and after that, an error message was displayed. I do not remember the exact message, but it was something like "A fatal error occurred. For more information, click on the Details button". After clicking on that button, the following error was displayed:
com.sapmarkets.bam.util.BAMRuntimeException
at com.sapmarkets.bam.jmx.connector.rmi.AbstractConnectorClient.invoke(AbstractConnectorClient.java:110)
at $Proxy31.getAttribute(Unknown Source)
at com.sapmarkets.bam.application.logdepot.AbstractLogDepot.getAttribute(AbstractLogDepot.java:236)
at com.sapmarkets.bam.application.logdepot.AbstractLogDepot.getLogDescriptors(AbstractLogDepot.java:84)
at com.sapmarkets.bam.view.config.RemoteViewConfiguration.initializeViewConfiguration(RemoteViewConfiguration.java:65)
at com.sapmarkets.bam.view.overview.OverviewFacade.populateOverview(OverviewFacade.java:219)
at com.sapmarkets.bam.view.AbstractLogViewerAppplication.populateOverview(AbstractLogViewerAppplication.java:171)
at com.sapmarkets.bam.view.AbstractLogViewerAppplication.initOverview(AbstractLogViewerAppplication.java:652)
at com.sapmarkets.bam.j2ee.services.logviewer.gui.LogViewerRuntimeLogical.setRuntime(LogViewerRuntimeLogical.java:121)
at com.sapmarkets.bam.j2ee.services.logviewer.gui.LogViewerRuntimeLogical.show(LogViewerRuntimeLogical.java:88)
at com.sap.engine.services.adminadapter.gui.node.ServiceNodeView.selectSingleService(ServiceNodeView.java:202)
at com.sap.engine.services.adminadapter.gui.node.ServiceNodeView.selectNode(ServiceNodeView.java:156)
at com.sap.engine.services.adminadapter.gui.AdminManager.selectServiceNode(AdminManager.java:290)
at com.sap.engine.services.adminadapter.gui.AdminManager.selectNode(AdminManager.java:170)
at com.sap.engine.services.adminadapter.gui.AdminManager.valueChanged(AdminManager.java:108)
at javax.swing.JTree.fireValueChanged(JTree.java:2392)
at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:2763)
at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:629)
at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1076)
at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:287)
at javax.swing.JTree.setSelectionInterval(JTree.java:2041)
at javax.swing.plaf.basic.BasicTreeUI$TreeIncrementAction.actionPerformed(BasicTreeUI.java:3268)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1530)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2438)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2473)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2401)
at java.awt.Component.processEvent(Component.java:4978)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3684)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3546)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1713)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:627)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:831)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:741)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:592)
at java.awt.Component.dispatchEventImpl(Component.java:3575)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3546)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:480)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
Caused by: java.lang.reflect.InvocationTargetException
at com.sapmarkets.bam.util.FutureResult.get(FutureResult.java:71)
at com.sapmarkets.bam.jmx.connector.rmi.AbstractConnectorClient.invoke(AbstractConnectorClient.java:104)
... 45 more
Caused by: java.lang.OutOfMemoryError: Java heap space
at javax.management.ObjectName.construct(ObjectName.java:385)
at javax.management.ObjectName.readObject(ObjectName.java:1063)
at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1736)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
at java.util.ArrayList.readObject(ArrayList.java:559)
at sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1736)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
at java.util.HashMap.readObject(HashMap.java:1015)
at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:838)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1736)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1835)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1759)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:322)
The line I marked on bold is the one that caught my attention. However, I have no idea why the application would run out of heap space. If this is the main cause of the error, do you know why this is happening? Or if there is another error causing the application to run out of heap space (which would cause the system to throw the OutOfMemoryError), what is this error and how can I fix it?