Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
If your Production jobs are running on Remote Engines/clusters, the message above is most likely not applicable. However if your environment has tasks executing on Cloud Engines then this guide will help you determine next steps on how to handle the Cloud Engine Java upgrade.
There are two ways to determine if your task is running on a Cloud Engine:
In Talend Cloud | Management Console | Management | Tasks select the task in question. In the left corner, it will display if the job is running on Cloud or a Remote Engine/cluster. |
|
In Talend Cloud | Management Console | Operations, click on any task from any filter. On the right sidebar will be all the task info including the Engine at the bottom. |
Once you have determined the tasks that are running on Cloud Engine, the next troubleshooting step is to test if reverting back to Java 8 allows the jobs to run successfully. The only way to revert Cloud Engines back to Java 8 is through the Cloud API. More information about this API call can be found here: https://api.talend.com/apis/processing/2021-03/#section_cloud-engines
Below is a step by step to run the API call. However if you are unfamiliar with API calls please contact Support for assistance on rolling back the API:
{
"jobJvmRollback": false
}
Case 1: If the job still fails, the issue is not related to Java. Make sure to change the jobJvmRollback back to false in this case.
Case2: If the jobs succeed, the job is failing due to Java 11 compatibility issues. Proceed to Step 3 of the guide.
To ensure that production jobs are running, we recommend keeping the jobJvmRollback set to true. However because Java 8 is no longer supported, we recommend migrating jobs to Java 11 or 17 as soon as possible.
Upgrading Java is similar to a patch upgrade, all jobs should be retested. To ensure a smooth transition for the tasks running on Cloud Engines, R&D strongly encourages customers to set up a Remote Engine 2.13.X and configure it to execute tasks using Java 11 (The RE 2.13.x requires Java 17 but can still execute tasks with Java 8 or Java 11).
There is no easy fix/catch all for Java 11 issues as job designs can greatly vary. Below are example of errors that may occur when upgrading Java
Error for SQL failure
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4098)
Solution
Issue is due to a SQL driver only compatible with Java 8. Inform customer to download new SQL driver that is compatible with Java 11 and test.
Error for tRestClient failure
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
Solutions
Qlik-Talend-Products-Java-17-Migration-Guide