OOM-out of memory issue when excuting BI report(query/web template)
OOM issue may happen on BW portal, when large BI report executed.
(Please go through link:http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp to help you get more basic information about heap memory)
in internal system,please refer to message:212567 2012 – Java Out of Memory Errors – Loblaws Inc.
1)Why the heap dump for OOM issue happen?
1)If you are running with the IBM Hybrid JVM 1.4.2 with J9 technology
(SAP note 1024539, 1008311) SR12 or above you have to add the
following parameter to the J2EE dispatcher or server nodes:
-Xdump:system:events=user,request=exclusive+prepwalk+compact
2)The JVM has a heap that is the runtime data area from which memory for all class instances and arrays are allocated. It is created at the JVM start-up.
- -Xmx<size> – to set the maximum Java heap size
- -Xms<size> – to set the initial Java heap size
When the memory has been used greater than the Java heapsize then the issue will happen.
For detailed information please refer following notes and generated info as below:
SAP Note 723909 – Java VM settings for J2EE 6.40/7.0
SAP Note 1248926-Java VM settings for J2EE 7.1
JVM: Java virtual machine-JAVA虚拟机(JAVA程序在每个平台上运行所需要的解释器。-一个虚构的操作平台。)
JDK: Java development kit
JRE:Java runtime enviroment
JVM parameter should be set in the ConfigTool (note 710146)
—————————————————————————————-
-Xms initial java heap size
-Xmx maximum java heap size
-Xmn the size of the heap for the young generation
—————————————————————————————-
For 32 bit platforms-we recommend to start the server nodes with 1GB
-Xmx1024m
-Xms1024m
For 64 bit platforms-we recommend start the server nodes with 2GB
-Xmx2048m
-Xms2048m
(for NW 7.0(04s)-BW7.0, BW7.01 there is a general recommendation to use 64bit systems)
The max heap size (plus max perm size) of all Java server nodes must fit completely into the physical memory in order to avoid heavy
paging on OS level. You must also consider the space needed for OS and other processes.
New Generation=NewSize+Survival Space
Permanent Space—more permanent space is needed if additional applications are deployed or the complexity of the applications
(roughly speaking number of classes) grows.
Garbage Collector options
Live objects are accessible by the application and will not be a subject of garbage collection.
Dead objects are those which will never be accessible by the application but have not been collected yet by the garbage collector.
Such objects occupy the heap memory space until they are eventually collected by the garbage collector.
2)How to analysis and indentify the issue:
Using full Heap dump feature for analysis of memory problems: this is an even more powerful feature, refer to
note 1004255 – How to create a full HPROF heap dump of J2EE Engine
note 1259465 – How to get a heapdump which can by analyzed with MAT
for more detailed info.
you may also find some info from the default trace:
/usr/sap/<SID>/JC<nr>/j2ee/cluster/server0/logs/default trace (latest).
Please update the heapdump into the following link container:
in the heapdump:
Index ->Table Of Contents ->system overview
->check point 1): Date and Time when the heapdump happen
check point 2): HTTP sessions used and percentage of the memory has been consumed
Then please use following tool to check the configuration:
-Supportdesk check result(note 9376967)
– /irj/servlet/prt/portal/prtroot/com.sap.ip.bi.web.portal.integration.sessionoverview
-SM04
– RSDDSTAT_OLAP -java >100000
Suggestions:
> Please make sure that you have followed all the recommendations
for BI JAVA sizing mentioned in the note 927530.
>maintain following parameter in RSADMIN table as note 1127156 :
BICS_DA_RESULT_SET_LIMIT_DEF 100.000
BICS_DA_RESULT_SET_LIMIT_MAX 100.000
>create mandatory variables for the query or web template
> Apply the latest patches of the BI Java components BI-BASE-S and
BIWEBAPP compatible with the used Support Package Stack according to
note 1163789. for BW7.3 there are 5 main components need to update.
1515139 -Frequent WEB AS JAVA out of memory crashes and/or core dumps
Further more,Ø BW is an OLAP system: analyze mass data & return small amount of data to accurately answer a certain question = end user reporting: 1 user analyzing the result, which requires a readable small amount of data. The overhead of unneeded data coming along with a report should be as little as possible using the features of query designer and runtime.
some time customer want to know how to delete the following JVM settings in following file:
file: /usr/sap/<SID>/<instance>/j2ee/cluster/server0
javacore,heapdump,snap ->relevant with EP side.
This blog will be updated if I got any new information and please add you comment if you have any concern.
2012/05/16