One Star

[resolved] Skip error rows in tOracleOutput

Hi all,
I need to skip rows on error in tOracleOutput component and in advance settings I unchecked the "Die on error" option.
Then I tried inserting a record set. But this record set contains a row with the same primary key as one of the existing records in the table.
I expected the job to skip that row and insert the other rows of the set. But I didnt notice that. Can anyone tell me the reason for this?
Thanks.
8 REPLIES
One Star

Re: [resolved] Skip error rows in tOracleOutput

As I figured out, Talend does not insert all the error-free rows in my records list. What it does is, it stops processing the records at the same point in both cases (ie, Die on error checked OR Die on error unchecked). The difference is, in the Die on error checked scenario, it rollbacks the changes. In Die on error unchecked scenario, it commits all the error-free rows up to that moment. So, in both cases all the rows after the point of failure are not committed to the database.
Please correct me if I am wrong. Thanks.
Four Stars

Re: [resolved] Skip error rows in tOracleOutput

Hi,
Have you checked direct Error records to some output using Reject link from tOracleOutput component... in this case, it would redirect all the error records to another output and continue with other records...
This link is enabled when you de-select Batch Size option...
Try this.
Thanks
Vaibhav
One Star

Re: [resolved] Skip error rows in tOracleOutput

Hi Vaibhav,
The thing is that my tOracleOutput component's action on data is 'Insert'. So I cannot use the reject link since it is disabled when I use the above option. Are there any other strategies to catch the rejected rows (in my case rows that create unique constraint violations).
Thanks.
Four Stars

Re: [resolved] Skip error rows in tOracleOutput

That is not a problem, I think you are using Existing Connection (Disable that checkbox)... In advance properties, you will get that option.
Vaibhav
One Star

Re: [resolved] Skip error rows in tOracleOutput

My 'Use an existing connection' option is unchecked. The Rejects link appear only when you switch to another 'Action on data' like 'Insert or update' or 'Update or insert' in 'tOracleOutput'.
Four Stars

Re: [resolved] Skip error rows in tOracleOutput

This is not true... Which version of Talend you are using... there must be some problem in talend... Check the screenshot for Talend 5.3.0.xx. Action on Data is Insert and action on table is Default.
Talend team would test it for you...
thanks
Vaibhav
One Star

Re: [resolved] Skip error rows in tOracleOutput

It is my mistake Vaibhav. Sorry I have mistaken 'commit size' to 'batch size'. Now the reject link appears. Thanks for your support.
Four Stars

Re: [resolved] Skip error rows in tOracleOutput

Oh... that's ok... Hope that you get the solution to your issue..
Thanks
Vaibhav