cancel
Showing results for 
Search instead for 
Did you mean: 

SAP PI server0 process OutofmemoryError 666

Former Member
0 Kudos

Hello,

On our SAP PI apps, J2ee process restarts automatically with  "Fatal: Caught outofmemoryError! Node will exit with exit code 666 java.lang.outofmemoryError".  It has been working fine for sometime. But now, I am not sure for what reason, it restarts by itself. I find huge entries like this in our developer trace file of J2ee process..

[Unloading class jsp._sapportalsjsp_NavigationForms]

[Unloading class sun.reflect.GeneratedMethodAccessor250]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor232]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor179]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor299]

[Unloading class sun.reflect.GeneratedMethodAccessor313]

[Unloading class sun.reflect.GeneratedMethodAccessor306]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor107]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor6]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor393]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor14]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor255]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor104]

[Unloading class sun.reflect.GeneratedSerializationConstructorAccessor451]

These are the JVM parameters for our server process..

-Djava.security.policy=./java.policy

-Djava.security.egd=file:/dev/urandom

-Dorg.omg.CORBA.ORBClass=com.sap.engine.system.ORBProxy

-Dorg.omg.CORBA.ORBSingletonClass=com.sap.engine.system.ORBSingletonProxy

-Djavax.rmi.CORBA.PortableRemoteObjectClass=com.sap.engine.system.PortableRemoteObjectProxy

-Djco.jarm=1

-XX:MaxPermSize=256M

-XX:PermSize=512M

-Xms1024M

-XX:NewSize=320M

-XX:MaxNewSize=171M

-XX:+DisableExplicitGC

-verbose:gc

-Xloggc:GC.log

-XX:+PrintGCDetails

-XX:+PrintGCTimeStamps

-Djava.awt.headless=true

-Dsun.io.useCanonCaches=false

-XX:SoftRefLRUPolicyMSPerMB=1

-XX:SurvivorRatio=2

-XX:TargetSurvivorRatio=90

-XX:+UseParNewGC

-XX:+HandlePromotionFailure

-Dorg.omg.PortableInterceptor.ORBInitializerClass.com.sap.engine.services.ts.jts.ots.PortableInterceptor.JTSInitializer

-Djava.io.tmpdir=C:\WINDOWS\Temp

-Dcm.tmpdir=C:\WINDOWS\Temp

We are currently on Windows 2003 SP2 version (64 bit version), J2ee 7.0 SP18 and Oracle 11.2.0.2 version. We have JDK 1.4.2_17 ver installed on our servers.

Physical RAM 8GB, Swap space 20GB

I tried increasing the max heap size (-Xmx) and initial heap size (-Xms) to 2GB and other relevant Perm and New size according to SAP note 723909, at this point the java server0 process starts but the SAP PI repository page is displayed only half, i can view only the top layer i.e. Tools and Administration, i cannot view Integration Directory, Integration Repository, RWB and SLD.

The page is just Plain, with no error in the std_server0, dev_server0, defaulttrace.

Please let me know your thoughts on this issue.

Regards

Hemang

Accepted Solutions (0)

Answers (2)

Answers (2)

sunny_pahuja2
Active Contributor
0 Kudos

Hi,

I can see that some parameters like PermSize etc. are not as per SAP recommendation. Please make sure that you set all memory parameters as per SAP note 723909.

Thanks

Sunny

Former Member
0 Kudos

Hi Sunny,

I tried setting the max heap size (-Xmx) and initial heap size (-Xms) to 2GB and other relevant Perm and New size according to SAP note 723909, at this point the java server0 process starts but the SAP PI repository page is displayed only half, i can view only the top layer i.e. Tools and Administration, i cannot view Integration Directory, Integration Repository, RWB and SLD.

The page is just Plain, with no error in the std_server0, dev_server0, defaulttrace.

Thanks & Regards

Hemang

Former Member
0 Kudos

Hi Hemang

can you attach default trace and other server0 related files from work directory.

Regards

Amit

Former Member
0 Kudos

Hi Amit,

Please find attached defaulttrace and STD_server0 log.

Thanks & Regards

Hemang

Former Member
0 Kudos

HI Hemang,

In order to find out what objects of which classes fill up the memory, you should create heapdumps and analyze them using memory analyzing tools such as eclipse memory analyzer.

Please check that -XX:-HeapDumpOnOutOfMemoryError

VM parameter has been added to the server node VM settings in the configtool. As a result *.hprof files will be created which can be analyzed by eclipse memory analyzer. It will show the content of the heap. Please find further information here:

http://docwiki.cisco.com/wiki/How_to_analyze_heap_dumps

Please also restart the cluster after changing the heap settings to take affect. XI/PI is a resource demanding tool, you can use the following note to reduce memory consuption

862405 - XI Configuration Options for Lowering Memory

Kind regards

Former Member
0 Kudos

For PI systems, in my experience we have set HEAP Size to 3GB. So set the below sizes and let us know if it starts successfully.

For Sun VM set -XX:NewSize=682m -XX:MaxNewSize=682m

PERM size can be -XX:PermSize=1024m and -XX:MaxPermSize=1024m

          

Thanks

Srikanth M

Former Member
0 Kudos

Hi Istvan,

Thanks for your reply, i will surely take the Heap dump and get it analysed with some MAT and get back to you.

Thanks & Regards

Hemang

Former Member
0 Kudos

Hi Srikanth,

Thanks for your reply, i will surely try and set the above JVM parameters and get back to you soon.

Thanks & Regards

Hemang

Former Member
0 Kudos

Hemang you can also check if audit caching is enabled on your PI server. that can also occupy a lot of memory leaving less for other services.

Regards

Amit Padmawar

Former Member
0 Kudos

Hi Everybody,

My apologies for the late response, i am still facing the Outof MemoryError 666.

Let me explain the scenario,

We have already applied the memory parameters according to SAP note 723909, but we received the same error.

We had received the OutofMemoryError 666 20 days back and we did a DB restore, after which the SAP DEV Apps was working fine for 7 days.Yesterday the JAVA team deployed in-house developed JAVA applicaion on the SAP J2ee engine, after which the system is again giving OutOfMemoryError 666.

With respect to the scenario explained above, can you help me to analyze the issue and suggest if it is result of parameter settings, Oracle Database or the Deployment of In-house developed JAVA Application.

We are also following up with SAP and we have generated the heapdump and shared the same with them.

Thanks & Regards

Hemang

sunny_pahuja2
Active Contributor
0 Kudos

Hi,

Please increase heap memory if you have sufficient memory on the server.

Thanks

Sunny

Former Member
0 Kudos

Hi Sunny,

Thanks for your quick reply, i tried increasing the heap memory but it did not help.

Any other JVM parameters to look for?

Thanks & Regards

Hemang

sunny_pahuja2
Active Contributor
0 Kudos

What is the version of your system ?

Also, please paste error logs from default trace.

Thanks

Sunny

Former Member
0 Kudos

Hi Sunny,

We are currently on Windows 2003 SP2 version (64 bit version), SAP Netweaver PI 7.0 SP18 Kernel Level 344 and Oracle 11.2.0.2 version. We have JDK 1.4.2_17 ver installed on our server.

Physical RAM 8GB, Swap space 20GB

Please find the attached defaulttrace snap.

Thanks & Regards

Hemang

sunny_pahuja2
Active Contributor
0 Kudos

Please check SAP note 1285490.

Thanks

Sunny

Former Member
0 Kudos

Hi Sunny,

We are getting the error while starting the SAP PI application itself. The ABAP is started fine, and the SAP J2ee SDM and Dispatcher also comes up fine, but the Server0 process fails with the OutofmemoryError 666.

Thanks & Regards

Hemang