cancel
Showing results for 
Search instead for 
Did you mean: 

jdbc sender channel memory size issue

former_member210677
Participant
0 Kudos

Hi Experts,

We are facing the below error in connect to jdbc sender channel from XI . Could anyone of you suggest me the right action to be taken in this regard.

Database-level error reported by JDBC driver while executing statement 'select * from*********where posted = '0''. The JDBC driver returned the following error message: 'com.microsoft.sqlserver.jdbc.SQLServerException: The system is out of memory. Use server side cursors for large result sets:Java heap space. Result set size:614,143,127. JVM total memory size:1,031,798,784.'. For details, contact your database server vendor.

Appreciate your quick help.

Thanks & Regards,

Ranganath.

Accepted Solutions (0)

Answers (4)

Answers (4)

former_member210677
Participant
0 Kudos

Thanks for the update.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Regulate the number of records returned by Select statement for permanent fix.

Few more things....

a)If you want to select only some fields, then dont use Select * from table. Rather specify select a,b,c from tablename

b) specify some flag in the table so that read some records each time and in the update statement update the flag for those records already read. So that you will not reread the same records in the next message.

Hope you understand.

c) Increasing java heap size is temporary fix.

agasthuri_doss
Active Contributor
0 Kudos

Ranga,

The number of records the sender adapter reading is more.. Try to increase the Java heap size and try. Can you send chunk records to the target, JDBC adapter can read number of records per polling you can make use of that option

PS: Increasing the Java heap >4gb is not a good idea since garbage collection will effect the performance

Cheers

Agasthuri

naveen_chichili
Active Contributor
0 Kudos

Hi Ranganath,

Ask your Basis team to increase Java heap memory and try your issue will get resoved.

Regds,

Naveen