tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Highlighted
Five Stars

tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hi!

I've got a parent job where inside are the Mysql connection components and a tRun component which is relating through a "onSubJobOk" with a tMysqlCommit and with a "onSubJobError" with a "tMysqlRollback".

 

The fact is when in the child job (tRun in parent) goes well, it seems that the tMysqlCommit is doing its job, but after several tests I've discovered that if I desactivate the tMysqlCommit, the tMysqlOutput in my child job is still doing it, so...

I don't know how, and I don't know why the tMysqlOutput is still doing the commit Smiley Frustrated.

 

If you need more info, or some screenshots about my job, just say it.

 

Thanks for your time and your attention!

 


Accepted Solutions
Five Stars

Re: tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hi!

 

I discovered my problem, sorry about that but I had got a tMysqlOutput with the "truncate" mode activated in "Action table" option, as a consequence and with all the logic, when tMysqlRollback tryed to run, it didnt work, and the others "tMysqlOutputs" (with no "trucate" mode) didn't work either.

 

When I changed it to "none" mode, the rollback goes without problems.

 

Thanks for your time.Smiley LOL

View solution in original post


All Replies
Nine Stars

Re: tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hello @PataToT

Can you plz add screenshots?

Sincerely
Maurice
Regards
DGM
--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Employee

Re: tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hi,

 

    The commit in the tDBOutput comes into picture when you have lot of data and it needs to be flushed to DB after a specific range of record count is reached (say 10000 records).

image.png

 

So if you have a large record set say 100k , then it will keep on committing every 10k to release the resources. But if you are having less than 10k, it will not go to this mode. So using DBCommit component ensures that the committing has been done after the data load step.

 

Now, if you do not want interim commits, you can add this value to very large number to avoid this scenario of interim commits.

 

Warm Regards,
Nikhil Thampi

Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved :-)

Five Stars

Re: tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hi!


Thanks for your quick response.


I understand what you want to say me, but the problem begins when I use a tMysqlConnection and my tMysqlConnection components heredate from it and automatically the "Commit Every" option is disabled...


My question now is how can I change the "Commit Every" default value per tMysqlOutput when it heredate the connection commit value? (Auto commit option in the tMysqlConnection is unchecked)


Thanks again.

Five Stars

Re: tMysqlOutput component is doing Auto Commit when the TMysqlConnection hasn't check that option

Hi!

 

I discovered my problem, sorry about that but I had got a tMysqlOutput with the "truncate" mode activated in "Action table" option, as a consequence and with all the logic, when tMysqlRollback tryed to run, it didnt work, and the others "tMysqlOutputs" (with no "trucate" mode) didn't work either.

 

When I changed it to "none" mode, the rollback goes without problems.

 

Thanks for your time.Smiley LOL

View solution in original post

2019 GARTNER MAGIC QUADRANT FOR DATA INTEGRATION TOOL

Talend named a Leader.

Get your copy

OPEN STUDIO FOR DATA INTEGRATION

Kickstart your first data integration and ETL projects.

Download now

Put Massive Amounts of Data to Work

Learn how to make your data more available, reduce costs and cut your build time

Watch Now

How OTTO Utilizes Big Data to Deliver Personalized Experiences

Read about OTTO's experiences with Big Data and Personalized Experiences

Blog

Best Practices for Using Context Variables with Talend – Part 4

Pick up some tips and tricks with Context Variables

Blog