Sunday 11 November 2018

How to increase Java heap size in Hyperion

Hi DBA-Mates, Good news that we got one more new error, hurrayyyy...
Recently, we got an error Exception in thread "main" java.lang.OutOfMemoryError: Java heap space … in Hyperion which we would like share with you all DBA’s…

Actually, one of our colleagues was thinking as increasing Java Heap Size is same in Hyperion and in Oracle EBS, but it completely different which we have shown below.
Login to correct Hyperion server where the Node manager, WebLogic and java are running as per our environment. But you can look accordingly as per your environment.

Here path may vary but the main file name is setHPenv.sh where we need to make changes for java heap size.
[oracle@host ~]$ hostname; id
ora-data.blogspot.com
uid=225(oracle) gid=2259(oinstall) groups=209(dba),2259(oinstall)

[oracle@host ~]$ cd /p02/apps/oracle/product/fin/ora-data/fmw/user_projects/orasystem1/planning/planning1
[oracle@host ~]$ pwd
/p02/apps/oracle/product/fin/ora-data/fmw/user_projects/orasystem1/planning/planning1
[oracle@host ~]$ ls -ltr setHPenv.sh*
-rwxr-x---+ 1 oracle oinstall 3776 Jun 23  2017 setHPenv.sh.512
-rwxr-x---+ 1 oracle oinstall 3777 Jun 23  2017 setHPenv.sh.10192015
-rwxr-x---+ 1 oracle oinstall 3983 Nov  8 02:45 setHPenv.sh.210818_bkp
-rwxr-x---+ 1 oracle oinstall 3984 Nov  8 02:59 setHPenv.sh
[oracle@host ~]$
As below we can see that Java heap size value is 512 MB in backup file and now we can increased to 1024 MB (1GB).

Note: Always take backup of file before editing or making any changes in file either on PROD or Test, otherwise you are good to know what can be happen hhhhhh...
Also, always check for "diff" value after made any changes in file and backup file as shown below

[oracle@esu2e005 planning1]$ diff setHPenv.sh.210818_bkp setHPenv.sh
< HP_JAVA_OPTIONS="${HP_JAVA_OPTIONS} -Xmx512M"
---
> HP_JAVA_OPTIONS="${HP_JAVA_OPTIONS} -Xmx1024M"
[oracle@esu2e005 planning1]$
Error Log details:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
                at java.lang.reflect.Array.newArray(Native Method)
                at java.lang.reflect.Array.newInstance(Array.java:52)
                at oracle.jdbc.driver.BufferCache.get(BufferCache.java:229)
                at oracle.jdbc.driver.PhysicalConnection.getByteBuffer(PhysicalConnection.java:12319)
                at oracle.jdbc.driver.OracleStatement.prepareAccessors(OracleStatement.java:1099)
                at oracle.jdbc.driver.OracleStatement.check_row_prefetch_changed(OracleStatement.java:3989)
                at oracle.jdbc.driver.OracleResultSetImpl.close_or_fetch_from_next(OracleResultSetImpl.java:599)
                at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:520)
                at com.hyperion.planning.sql.HspSQLImpl.executeQuery(HspSQLImpl.java:228)
                at com.hyperion.planning.sql.HspSQLImpl.executeQuery(HspSQLImpl.java:108)
                at com.hyperion.planning.sql.JDBCCacheLoader.loadObjects(JDBCCacheLoader.java:62)
                at com.hyperion.planning.sql.JDBCCacheLoader.loadObjects(JDBCCacheLoader.java:44)
                at com.hyperion.planning.sql.GenericCache.loadCache(GenericCache.java:383)
                at com.hyperion.planning.sql.GenericCache.getCache(GenericCache.java:150)
                at com.hyperion.planning.sql.GenericCache.getObject(GenericCache.java:294)
Some more useful link:
Regards,

No comments:

Post a Comment

Thank you for your comments and suggestions. It's good to talk you.