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: 
FredC
Contributor
Contributor

Problem with tsalesforceoutput rejects when Commit level >1

Hello,

 

I have 2 problems with the tsalesforceoutput component (talend 6.2) :

 

1. II've set my commit level to 10 

Each time I encounter a specificl kind of error, I have incorrect data returned in my reject flow (the data fields are not the data that causes the error) 

The error is : "duplicate value found: unknown duplique une valeur dans l'enregistrement ID : ..."

When I get this error message the detail of the datas which should normally cause the error is not the good one 

(I think it return the first line of the 10 rows that were upserted when the error occurs)

If I set the commit level to 1 : everything is correct (but the upsert take a lot more time to finish ) 

 

2. The second problem is that if I have a commit level of 10, my reject flow will have each error message repeted 10 times (I try also with 100 ... and I get 100 similiar lines of reject for each error (I solve this by adding a taggregaterow)   

 

For the first point do you have a solution other then setting the commit level to 1?

 

Thanks 

 

Labels (3)
6 Replies
Anonymous
Not applicable

When you set commit Level to 10, and get an error, are the 10 rows that are part of that batch rollbacked?  Or the successful rows committed?

Generally with other database components, the whole batch will fail.  

 

Anonymous
Not applicable

Also make sure you are using compatible oracle drivers that works with the Java version you have.

FredC
Contributor
Contributor
Author

Thank you for your reply. 

I didn't check that point, I will have to check next week.  

Actually the goal of my post is the identification of the rejected line that cause the error but your remarks is to be checked also !  

 

FredC
Contributor
Contributor
Author


@iburtally wrote:

Also make sure you are using compatible oracle drivers that works with the Java version you have.


It works as the upsert is correctly done in salesforce (except for the rejects that I want to be able to identify to correct the data in the source application) 

(the component don't send data in an oracle database, it write in salesforce.com throught a webservice)

Anonymous
Not applicable

Sorry my mistake.  My reply for another post got posted here.