Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
AIjel
Contributor
Contributor

After migration to 8.0.1 dates are 1 day before

Hello all,

I recently migrated to Open Data Integration 8.0.1 from 6.4.1

I have a mysql 5 database

when i run my process all my dates are 1 day before what is expected!

I tried to use UTC on both jdbc connection (

serverTimezone=UTC)

and mysql server (default-time-zone='+00:00') but that didn't fix the issue.

It seems it is an compatibility issue with mysql 8 jdbc driver. Does anyone faced this issue?

here is my JDBC connection:

jdbc:mysql://localhost:3306/<myTable>?noDatetimeStringSync=true&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC

any idea how to solve this issue?

thanks

Ammar

Labels (3)
22 Replies
AIjel
Contributor
Contributor
Author

here is the process

Anonymous
Not applicable

Hello,

As we can see that the option "Use an independent process to run subjob" is checked out, did you try to add the parameter in your both parent job and child job?

-Duser.timezone=UTC

Best regards

Sabrina

AIjel
Contributor
Contributor
Author

Any thought?

AIjel
Contributor
Contributor
Author

Sorry Xdshi, i didn't see your answer!

yes, adding -Duser.timezone=UTC changes nothing!

and as i said:

with  "Use an independent process to run subjob"  checked out : i have the problem

and with  "Use an independent process to run subjob" checked in : the problem disapear!

any idea why?

Anonymous
Not applicable

Hello,

As the "Use an independent process to run subjob" option in tRunJob component will put the subjob in a different process and get it to spawn a new JVM, please make sure the parameter "-Duser.timezone=UTC" does affect both your parent job and child job.

Best regards

Sabrina

 

AIjel
Contributor
Contributor
Author

Thank you for your answer

If I added "-Duser.timezone=UTC" to tlaend ini file, does it apply to all process i imported from former project?

it looks like the parent process is not with this time zone. how can i check?

thanks

AIjel
Contributor
Contributor
Author

or maybe the tRunJob doesn't transmit this parameter to children?

Anonymous
Not applicable

Hello,

Open the Run Job viewer, click on 'Advanced settings' panel and check 'use JVM parameter' box, add the following parameter for your both parent job and child job

-Duser.timezone=UTC

Best regards

Sabrina

Anonymous
Not applicable

Hello,

Actually, this option doesn't make effort on your JVM parameter.

For "Transmit whole context" part, as the effective range of a context variable is limited to the job itself, the child job can't access the context variables of the main job. You need also to define a variable with the same name in child job. If the 'transmit the whole context' box is checked, the value of context variables of the main job will be passed automatically to the context variables with the same name of the child job.

Hope it helps.

Best regards

Sabrina

 

 

 

AIjel
Contributor
Contributor
Author

Hello all,

the solution is to add

-Duser.timezone=UTC

to Talend settings: Window->Preferences->Talend->Run/Debug

adding to .ini file hasn't the same effect!

thanks for your help