Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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 .
If you need more info, or some screenshots about my job, just say it.
Thanks for your time and your attention!
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.
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).
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 🙂
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.
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.