How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Highlighted
One Star

How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Hello,
I have a job which use a lot of RAM and finally end with an error in Talend => java.lang.OutOfMemoryError: GC overhead limit exceeded
I know how to resolve this by changing the Xmx option.
But my problem is with Talend, the job ended with an exit code = 0 
No data were received with tLogCatcher and tStatCatcher indicates a success...
So, is this a bug ? am I wrong with something ? Is there a solution to catch this error ? Is this a java exception ?
Thanks in advance
Moderator

Re: How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Hi,
On which build version you got this issue? How did you set your Xmx option? More information will be helpful for us to address your issue quickly.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Hi,
I have this problem with version 6.0.1.20150908_1633 (and with 6.2.0.20160510_1709). 
The first time, I had this problem with 2048M on Xmx value, but i tried with 512M and it's the same
This problem comes on my personnal laptop (development environnement) when i launch the job from Talend and on the server (production environment) when the job is launched by the .bat (windows environment) => dev and prod are on windows.
Just to be sure, my problem isn't the java crash but the absence of log about this crash
Regards
Moderator

Re: How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Hi,
tLogCatcher is used to catch java exception message.
Most components provide error messages via the globalMap. Typically with this key <component_unique_id>_ERROR_MESSAGE. If you want to  the whole stack trace, you can re-design your job with OnComponentError and OnSubjobError connection type.
Best regards
Sabrina
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
One Star

Re: How to catch java.lang.OutOfMemoryError: GC overhead limit exceeded ?

Hi,
Thanks for your answer. My problem is that the tlogcatcher doesn't seems to make his job because i have a java exception and the tlogcatcher log nothing.
See below :
 - the configuration of tlogcatcher (Catch Java exception is flagged) 
 - the result of the job
tLogCatcher feeds tOutputFileDelimited but nothing is stored on the file after the crash.

What’s New for Talend Spring ’19

Watch the recorded webinar!

Watch Now

Definitive Guide to Data Quality

Create systems and workflow to manage clean data ingestion and data transformation.

Download

Tutorial

Introduction to Talend Open Studio for Data Integration.

Watch

Downloads and Trials

Test drive Talend's enterprise products.

Downloads